summaryrefslogtreecommitdiff
path: root/neozip/test
diff options
context:
space:
mode:
authorMehmet Samet Duman <yongdohyun@projecttick.org>2026-04-02 19:56:09 +0300
committerMehmet Samet Duman <yongdohyun@projecttick.org>2026-04-02 19:56:09 +0300
commit7fb132859fda54aa96bc9dd46d302b343eeb5a02 (patch)
treeb43ae77d7451fb470a260c03349a1caf2846c5e5 /neozip/test
parentb1e34e861b5d732afe828d58aad2c638135061fd (diff)
parentc2712b8a345191f6ed79558c089777df94590087 (diff)
downloadProject-Tick-7fb132859fda54aa96bc9dd46d302b343eeb5a02.tar.gz
Project-Tick-7fb132859fda54aa96bc9dd46d302b343eeb5a02.zip
Add 'neozip/' from commit 'c2712b8a345191f6ed79558c089777df94590087'
git-subtree-dir: neozip git-subtree-mainline: b1e34e861b5d732afe828d58aad2c638135061fd git-subtree-split: c2712b8a345191f6ed79558c089777df94590087
Diffstat (limited to 'neozip/test')
-rw-r--r--neozip/test/.gitignore5
-rw-r--r--neozip/test/CMakeLists.txt260
-rw-r--r--neozip/test/CVE-2002-0059/test.gzbin0 -> 4610 bytes
-rw-r--r--neozip/test/CVE-2004-0797/test.gzbin0 -> 52 bytes
-rw-r--r--neozip/test/CVE-2005-1849/test.gzbin0 -> 52 bytes
-rw-r--r--neozip/test/CVE-2005-2096/test.gzbin0 -> 52 bytes
-rw-r--r--neozip/test/CVE-2018-25032/default.txt1
-rw-r--r--neozip/test/CVE-2018-25032/fixed.txt1
-rw-r--r--neozip/test/GH-1600/packobj.gzbin0 -> 46 bytes
-rw-r--r--neozip/test/GH-361/test.txt4
-rw-r--r--neozip/test/GH-364/test.binbin0 -> 8 bytes
-rw-r--r--neozip/test/GH-382/defneg3.dat1
-rw-r--r--neozip/test/GH-751/test.txt1
-rw-r--r--neozip/test/GH-979/pigz-2.6.tar.gzbin0 -> 106840 bytes
-rw-r--r--neozip/test/Makefile.in82
-rw-r--r--neozip/test/README.md37
-rw-r--r--neozip/test/abi/ignore11
-rw-r--r--neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-aarch64-unknown-linux-gnu.abi1293
-rw-r--r--neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-arm-unknown-linux-gnueabi.abi1276
-rw-r--r--neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-arm-unknown-linux-gnueabihf.abi1276
-rw-r--r--neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-mips-unknown-linux-gnu.abi1271
-rw-r--r--neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-mips64-unknown-linux-gnuabi64.abi1276
-rw-r--r--neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc-unknown-linux-gnu.abi1286
-rw-r--r--neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc64-unknown-linux-gnu.abi1275
-rw-r--r--neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc64le-unknown-linux-gnu.abi1275
-rw-r--r--neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-x86_64-pc-linux-gnu-m32.abi1270
-rw-r--r--neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-x86_64-pc-linux-gnu.abi1288
-rw-r--r--neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-aarch64-unknown-linux-gnu.abi1904
-rw-r--r--neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-arm-unknown-linux-gnueabi.abi1889
-rw-r--r--neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-arm-unknown-linux-gnueabihf.abi1881
-rw-r--r--neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-mips-unknown-linux-gnu.abi1241
-rw-r--r--neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-mips64-unknown-linux-gnuabi64.abi1250
-rw-r--r--neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc-unknown-linux-gnu.abi1895
-rw-r--r--neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc64-unknown-linux-gnu.abi1894
-rw-r--r--neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc64le-unknown-linux-gnu.abi1886
-rw-r--r--neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-x86_64-pc-linux-gnu-m32.abi2032
-rw-r--r--neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-x86_64-pc-linux-gnu.abi2064
-rw-r--r--neozip/test/abicheck.md59
-rwxr-xr-xneozip/test/abicheck.sh163
-rw-r--r--neozip/test/add-subdirectory-project/CMakeLists.txt13
-rw-r--r--neozip/test/add-subdirectory-project/main.c7
-rw-r--r--neozip/test/benchmarks/CMakeLists.txt126
-rw-r--r--neozip/test/benchmarks/README.md63
-rw-r--r--neozip/test/benchmarks/benchmark_adler32.cc121
-rw-r--r--neozip/test/benchmarks/benchmark_adler32_copy.cc176
-rw-r--r--neozip/test/benchmarks/benchmark_compare256.cc106
-rw-r--r--neozip/test/benchmarks/benchmark_compare256_rle.cc72
-rw-r--r--neozip/test/benchmarks/benchmark_compress.cc75
-rw-r--r--neozip/test/benchmarks/benchmark_crc32.cc125
-rw-r--r--neozip/test/benchmarks/benchmark_crc32_copy.cc177
-rw-r--r--neozip/test/benchmarks/benchmark_deflate.cc147
-rw-r--r--neozip/test/benchmarks/benchmark_inflate.cc169
-rw-r--r--neozip/test/benchmarks/benchmark_insert_string.cc164
-rw-r--r--neozip/test/benchmarks/benchmark_main.cc32
-rw-r--r--neozip/test/benchmarks/benchmark_png_decode.cc126
-rw-r--r--neozip/test/benchmarks/benchmark_png_encode.cc54
-rw-r--r--neozip/test/benchmarks/benchmark_png_shared.h146
-rw-r--r--neozip/test/benchmarks/benchmark_slidehash.cc116
-rw-r--r--neozip/test/benchmarks/benchmark_uncompress.cc97
-rw-r--r--neozip/test/cmake/compress-and-verify.cmake287
-rw-r--r--neozip/test/cmake/run-and-compare.cmake72
-rw-r--r--neozip/test/cmake/run-and-redirect.cmake54
-rw-r--r--neozip/test/cmake/test-cves.cmake33
-rw-r--r--neozip/test/cmake/test-data.cmake68
-rw-r--r--neozip/test/cmake/test-issues.cmake84
-rw-r--r--neozip/test/cmake/test-tools.cmake80
-rw-r--r--neozip/test/compressible_data_p.h54
-rw-r--r--neozip/test/data/fireworks.jpgbin0 -> 123093 bytes
-rw-r--r--neozip/test/data/lcet10.txt7519
-rw-r--r--neozip/test/data/paper-100k.pdf598
-rw-r--r--neozip/test/example.c1002
-rw-r--r--neozip/test/fuzz/CMakeLists.txt45
-rw-r--r--neozip/test/fuzz/fuzzer_checksum.c81
-rw-r--r--neozip/test/fuzz/fuzzer_compress.c82
-rw-r--r--neozip/test/fuzz/fuzzer_example_dict.c164
-rw-r--r--neozip/test/fuzz/fuzzer_example_flush.c119
-rw-r--r--neozip/test/fuzz/fuzzer_example_large.c137
-rw-r--r--neozip/test/fuzz/fuzzer_example_small.c118
-rw-r--r--neozip/test/fuzz/fuzzer_minigzip.c317
-rw-r--r--neozip/test/fuzz/standalone_fuzz_target_runner.c37
-rw-r--r--neozip/test/gh1235.c39
-rw-r--r--neozip/test/hash_test_strings_p.h375
-rw-r--r--neozip/test/infcover.c683
-rw-r--r--neozip/test/minideflate.c368
-rw-r--r--neozip/test/minigzip.c368
-rw-r--r--neozip/test/pigz/CMakeLists.txt209
-rw-r--r--neozip/test/pkgcheck.sh180
-rw-r--r--neozip/test/switchlevels.c168
-rw-r--r--neozip/test/test_adler32.cc75
-rw-r--r--neozip/test/test_adler32_copy.cc83
-rw-r--r--neozip/test/test_compare256.cc96
-rw-r--r--neozip/test/test_compare256_rle.cc54
-rw-r--r--neozip/test/test_compress.cc33
-rw-r--r--neozip/test/test_compress_bound.cc59
-rw-r--r--neozip/test/test_compress_dual.cc28
-rw-r--r--neozip/test/test_cpu_features.h12
-rw-r--r--neozip/test/test_crc32.cc146
-rw-r--r--neozip/test/test_crc32_copy.cc89
-rw-r--r--neozip/test/test_cve-2003-0107.cc28
-rw-r--r--neozip/test/test_deflate.cc150
-rw-r--r--neozip/test/test_deflate_bound.cc99
-rw-r--r--neozip/test/test_deflate_concurrency.cc170
-rw-r--r--neozip/test/test_deflate_copy.cc60
-rw-r--r--neozip/test/test_deflate_deterministic.cc71
-rw-r--r--neozip/test/test_deflate_dict.cc54
-rw-r--r--neozip/test/test_deflate_hash_head_0.cc83
-rw-r--r--neozip/test/test_deflate_header.cc71
-rw-r--r--neozip/test/test_deflate_params.cc143
-rw-r--r--neozip/test/test_deflate_pending.cc66
-rw-r--r--neozip/test/test_deflate_prime.cc91
-rw-r--r--neozip/test/test_deflate_quick_bi_valid.cc80
-rw-r--r--neozip/test/test_deflate_quick_block_open.cc94
-rw-r--r--neozip/test/test_deflate_tune.cc56
-rw-r--r--neozip/test/test_dict.cc98
-rw-r--r--neozip/test/test_gzio.cc106
-rw-r--r--neozip/test/test_inflate_adler32.cc50
-rw-r--r--neozip/test/test_inflate_copy.cc31
-rw-r--r--neozip/test/test_inflate_sync.cc75
-rw-r--r--neozip/test/test_large_buffers.cc87
-rw-r--r--neozip/test/test_main.cc22
-rw-r--r--neozip/test/test_raw.cc58
-rw-r--r--neozip/test/test_shared.h18
-rw-r--r--neozip/test/test_shared_ng.h23
-rw-r--r--neozip/test/test_small_buffers.cc69
-rw-r--r--neozip/test/test_small_window.cc67
-rw-r--r--neozip/test/test_version.cc27
126 files changed, 49522 insertions, 0 deletions
diff --git a/neozip/test/.gitignore b/neozip/test/.gitignore
new file mode 100644
index 0000000000..96a3cad070
--- /dev/null
+++ b/neozip/test/.gitignore
@@ -0,0 +1,5 @@
+# ignore Makefiles; they're all automatically generated
+Makefile
+/switchlevels
+/switchlevels.dSYM/
+/switchlevels.exe
diff --git a/neozip/test/CMakeLists.txt b/neozip/test/CMakeLists.txt
new file mode 100644
index 0000000000..cfaed9312d
--- /dev/null
+++ b/neozip/test/CMakeLists.txt
@@ -0,0 +1,260 @@
+macro(configure_test_executable target)
+ target_include_directories(${target} PRIVATE ${PROJECT_BINARY_DIR} ${PROJECT_SOURCE_DIR})
+ set_target_properties(${target} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR})
+ if(NOT WITH_GZFILEOP)
+ target_compile_definitions(${target} PRIVATE -DWITH_GZFILEOP)
+ target_sources(${target} PRIVATE ${ZLIB_GZFILE_PRIVATE_HDRS} ${ZLIB_GZFILE_SRCS})
+ endif()
+endmacro()
+
+if(TEST_STOCK_ZLIB)
+ add_definitions(-DTEST_STOCK_ZLIB)
+endif()
+
+add_executable(example example.c)
+configure_test_executable(example)
+target_link_libraries(example zlib-ng)
+add_test(NAME example COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:example>)
+
+add_executable(minigzip minigzip.c)
+configure_test_executable(minigzip)
+if(NOT DEFINED BUILD_SHARED_LIBS)
+ target_link_libraries(minigzip zlib-ng-static)
+else()
+ target_link_libraries(minigzip zlib-ng)
+endif()
+if(BASEARCH_S360_FOUND)
+ if(WITH_DFLTCC_DEFLATE OR WITH_DFLTCC_INFLATE)
+ set_source_files_properties(minigzip.c PROPERTIES COMPILE_DEFINITIONS BUFLEN=262144)
+ endif()
+endif()
+set(MINIGZIP_COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:minigzip>)
+
+add_executable(minideflate minideflate.c)
+configure_test_executable(minideflate)
+target_link_libraries(minideflate zlib-ng)
+set(MINIDEFLATE_COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:minideflate>)
+
+if(INSTALL_UTILS)
+ install(TARGETS minigzip minideflate
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}")
+endif()
+
+add_executable(switchlevels switchlevels.c)
+configure_test_executable(switchlevels)
+target_link_libraries(switchlevels zlib-ng)
+set(SWITCHLEVELS_COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:switchlevels>)
+
+add_executable(infcover infcover.c)
+configure_test_executable(infcover)
+target_link_libraries(infcover zlib-ng)
+if(NOT DEFINED BUILD_SHARED_LIBS OR BUILD_SHARED_LIBS)
+ target_sources(infcover PRIVATE ${PROJECT_SOURCE_DIR}/inftrees.c)
+endif()
+add_test(NAME infcover COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:infcover>)
+
+add_executable(makefixed ${PROJECT_SOURCE_DIR}/tools/makefixed.c ${PROJECT_SOURCE_DIR}/inftrees.c)
+configure_test_executable(makefixed)
+set(MAKEFIXED_COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:makefixed>)
+
+add_executable(maketrees ${PROJECT_SOURCE_DIR}/tools/maketrees.c ${PROJECT_SOURCE_DIR}/trees.c ${PROJECT_SOURCE_DIR}/zutil.c)
+configure_test_executable(maketrees)
+set(MAKETREES_COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:maketrees>)
+
+add_executable(makecrct ${PROJECT_SOURCE_DIR}/tools/makecrct.c)
+configure_test_executable(makecrct)
+set(MAKECRCT_COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:makecrct>)
+
+# Emscripten does not support large amounts of data via stdin/out
+# https://github.com/emscripten-core/emscripten/issues/16755#issuecomment-1102732849
+if(NOT BASEARCH_WASM32_FOUND)
+ # Runs tests targeting CVEs
+ include(cmake/test-cves.cmake)
+
+ # Run tests with data files
+ include(cmake/test-data.cmake)
+
+ # Run tests targeting GitHub issues
+ include(cmake/test-issues.cmake)
+
+ # Run tests targeting tools
+ include(cmake/test-tools.cmake)
+endif()
+
+if(WITH_FUZZERS)
+ add_subdirectory(fuzz)
+endif()
+
+if(WITH_BENCHMARKS)
+ add_subdirectory(benchmarks)
+endif()
+
+if(WITH_GTEST)
+ # Google test requires at least C++11
+ if(NOT DEFINED CMAKE_CXX_STANDARD)
+ # Use older version of Google test to support older versions of GCC
+ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS_EQUAL 5.3)
+ set(CMAKE_CXX_STANDARD 11)
+ else()
+ set(CMAKE_CXX_STANDARD 14)
+ endif()
+ endif()
+
+ # Google test requires MSAN instrumented LLVM C++ libraries
+ if(WITH_SANITIZER STREQUAL "memory")
+ if(NOT DEFINED ENV{LLVM_BUILD_DIR})
+ message(FATAL_ERROR "MSAN instrumented C++ libraries required!")
+ endif()
+
+ # Must set include and compile options before fetching googletest
+ include_directories($ENV{LLVM_BUILD_DIR}/include $ENV{LLVM_BUILD_DIR}/include/c++/v1)
+ add_compile_options(-stdlib=libc++ -g)
+ elseif(NOT TARGET GTest::GTest)
+ find_package(GTest)
+ endif()
+
+ if(NOT TARGET GTest::GTest)
+ include(FetchContent)
+
+ # Prevent overriding the parent project's compiler/linker settings for Windows
+ set(gtest_force_shared_crt ON CACHE BOOL
+ "Use shared (DLL) run-time lib even when Google Test is built as static lib." FORCE)
+
+ # Allow specifying alternative Google test repository
+ if(NOT DEFINED GTEST_REPOSITORY)
+ set(GTEST_REPOSITORY https://github.com/google/googletest.git)
+ endif()
+ if(NOT DEFINED GTEST_TAG)
+ # Use older version of Google test to support older versions of GCC
+ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS_EQUAL 5.3)
+ set(GTEST_TAG release-1.10.0)
+ else()
+ set(GTEST_TAG v1.16.0)
+ endif()
+ endif()
+
+ # Fetch Google test source code from official repository
+ message(STATUS "Git checking out GoogleTest ${GTEST_TAG}")
+ FetchContent_Declare(googletest
+ GIT_REPOSITORY ${GTEST_REPOSITORY}
+ GIT_TAG ${GTEST_TAG}
+ ${ZNG_FetchContent_Declare_EXCLUDE_FROM_ALL})
+
+ ZNG_FetchContent_MakeAvailable(googletest)
+ add_library(GTest::GTest ALIAS gtest)
+ add_library(GTest::Main ALIAS gtest_main)
+ endif()
+
+ if(TARGET GTest::GTest)
+ set(TEST_SRCS
+ test_compress.cc
+ test_compress_bound.cc
+ test_cve-2003-0107.cc
+ test_deflate_bound.cc
+ test_deflate_copy.cc
+ test_deflate_dict.cc
+ test_deflate_hash_head_0.cc
+ test_deflate_header.cc
+ test_deflate.cc
+ test_deflate_params.cc
+ test_deflate_pending.cc
+ test_deflate_prime.cc
+ test_deflate_quick_bi_valid.cc
+ test_deflate_quick_block_open.cc
+ test_deflate_tune.cc
+ test_dict.cc
+ test_inflate_adler32.cc
+ test_inflate_copy.cc
+ test_large_buffers.cc
+ test_raw.cc
+ test_small_buffers.cc
+ test_small_window.cc
+ )
+
+ if(WITH_GZFILEOP)
+ list(APPEND TEST_SRCS test_gzio.cc)
+ endif()
+
+ if(NOT TEST_STOCK_ZLIB)
+ list(APPEND TEST_SRCS
+ test_adler32.cc # adler32_neon(), etc
+ test_adler32_copy.cc # adler32_copy implementations
+ test_compare256.cc # compare256_neon(), etc
+ test_compare256_rle.cc # compare256_rle(), etc
+ test_crc32.cc # crc32_armv8(), etc
+ test_crc32_copy.cc # crc32_copy implementations
+ test_deflate_deterministic.cc # deterministic output after deflateReset
+ test_inflate_sync.cc # expects a certain compressed block layout
+ test_main.cc # cpu_check_features()
+ test_version.cc # expects a fixed version string
+ )
+ endif()
+
+ add_executable(gtest_zlib ${TEST_SRCS})
+ configure_test_executable(gtest_zlib)
+
+ if(MSVC)
+ target_compile_options(gtest_zlib PRIVATE /wd4389 /EHsc)
+ endif()
+
+ if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
+ target_compile_options(gtest_zlib PRIVATE -D_XOPEN_SOURCE=700)
+ endif()
+
+ if(WITH_SANITIZER STREQUAL "memory")
+ target_link_directories(gtest_zlib PRIVATE $ENV{LLVM_BUILD_DIR}/lib)
+ target_link_options(gtest_zlib PRIVATE
+ -stdlib=libc++
+ -lc++abi
+ -fsanitize=memory
+ -fsanitize-memory-track-origins)
+ endif()
+
+ if(NOT ZLIB_COMPAT AND DEFINED ZLIB_LIBRARIES AND DEFINED ZLIB_INCLUDE_DIRS)
+ if(NOT IS_ABSOLUTE ${ZLIB_LIBRARIES})
+ get_filename_component(ZLIB_ABSOLUTE_PATH
+ "${CMAKE_CURRENT_SOURCE_DIR}/${ZLIB_LIBRARIES}"
+ ABSOLUTE)
+ else()
+ set(ZLIB_ABSOLUTE_PATH ${ZLIB_LIBRARIES})
+ endif()
+
+ add_library(external_zlib STATIC IMPORTED)
+ set_property(TARGET external_zlib PROPERTY IMPORTED_LOCATION ${ZLIB_ABSOLUTE_PATH})
+ message(STATUS "Added dual linking tests against zlib")
+ message(STATUS " Zlib include dirs: ${ZLIB_INCLUDE_DIRS}")
+ message(STATUS " Zlib libraries: ${ZLIB_ABSOLUTE_PATH}")
+
+ target_sources(gtest_zlib PRIVATE test_compress_dual.cc)
+ target_include_directories(gtest_zlib PRIVATE ${ZLIB_INCLUDE_DIRS})
+ target_link_libraries(gtest_zlib external_zlib)
+ endif()
+
+ if(NOT DEFINED BUILD_SHARED_LIBS)
+ # Link statically in order to test internal zlib-ng functions.
+ target_link_libraries(gtest_zlib zlib-ng-static)
+ else()
+ target_link_libraries(gtest_zlib zlib-ng)
+ endif()
+
+ if(BUILD_SHARED_LIBS)
+ target_link_libraries(gtest_zlib GTest::Main)
+ endif()
+ target_link_libraries(gtest_zlib GTest::GTest)
+
+ find_package(Threads)
+ if(Threads_FOUND AND NOT BASEARCH_WASM32_FOUND)
+ target_sources(gtest_zlib PRIVATE test_deflate_concurrency.cc)
+ if(UNIX AND NOT APPLE)
+ # On Linux, use a workaround for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52590
+ target_link_libraries(gtest_zlib -Wl,--whole-archive -lpthread -Wl,--no-whole-archive)
+ endif()
+ target_link_libraries(gtest_zlib Threads::Threads)
+ endif()
+
+ add_test(NAME gtest_zlib
+ COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:gtest_zlib>)
+ endif()
+endif()
diff --git a/neozip/test/CVE-2002-0059/test.gz b/neozip/test/CVE-2002-0059/test.gz
new file mode 100644
index 0000000000..c5c3e184b1
--- /dev/null
+++ b/neozip/test/CVE-2002-0059/test.gz
Binary files differ
diff --git a/neozip/test/CVE-2004-0797/test.gz b/neozip/test/CVE-2004-0797/test.gz
new file mode 100644
index 0000000000..62dcf34bdd
--- /dev/null
+++ b/neozip/test/CVE-2004-0797/test.gz
Binary files differ
diff --git a/neozip/test/CVE-2005-1849/test.gz b/neozip/test/CVE-2005-1849/test.gz
new file mode 100644
index 0000000000..b28f278263
--- /dev/null
+++ b/neozip/test/CVE-2005-1849/test.gz
Binary files differ
diff --git a/neozip/test/CVE-2005-2096/test.gz b/neozip/test/CVE-2005-2096/test.gz
new file mode 100644
index 0000000000..11590aeab9
--- /dev/null
+++ b/neozip/test/CVE-2005-2096/test.gz
Binary files differ
diff --git a/neozip/test/CVE-2018-25032/default.txt b/neozip/test/CVE-2018-25032/default.txt
new file mode 100644
index 0000000000..5edbff6480
--- /dev/null
+++ b/neozip/test/CVE-2018-25032/default.txt
@@ -0,0 +1 @@
+OBXESYMXQLOTSVVWGIMGKKJOVTYKPPMYROFHSCXQPOFVHKBKAFYYAFTWCVOBPXWDSSFZCKBJOJUWPUQHKBNYZMCYEDEBXLAOREOASIEPAISNAZSXQKMWJSABFVSOXNKTGDCZKRSNBTWWGRNRZWGQEHKKQJGSGGFWJCETJVULWEJAQPAILMMQBVWJWMHWBSIOAXOQNEJYAQSPEOACRIFYOFHTBLZFSHOYGQFDGLLCDEHGPRAUFMANGCKZNZJBMEAEDDPZPJMMFEQGEUOHYFEQUKKHTOELBFUVDMNCEGPTLQYPDFTUGGOEUMUIAKAAZNXAEAKZREKXSZZAKFMHDZJFQDLLSILAMUHDQJTVMYIZWFEOPCKWVSXYDEOSGVWACWZNDDTOOYSFCOYHMCUSELFMSBJIUMPFOGDDJGHELQJSUAEEOWQEJMWRRBBAANVFEUMJZRQGDIWXOYXCZZLMDRHPJAYGUUJENSDDGBKDFRXMINPXRZJNAUPBIOAAKLMFUTZWAEWIBUTYOLPPNUWMFYJQIEMJYKVRNKRXGODFFRMMSKDBBKRJGUWOFMNKQPJLCCNDOTIWVGNWVIQINFPLJLEQRMNSVYFGNWMWYGKHBRSLPCCPHUNXIDKDGIELLDUIOXAJOZGIJVKGBJMGSCOHPRFVUPXJREGBMUXNSCBBRASVMNZHELWNHROPZGWIYMKESWGWNANICQTNICGQBJLAONQEEDEYUIGAOQCDTVBLSSACVCUAURKRLCYIHAYHZZCBVMLALYJKNVJTHYTFDDZVOQBUSDTPERXSTYJKCOGGFLBRQIARKTDBQHSFBBEEWYIEOOHUWKUGACNGZQMAHWPFJJOHMJGULPPXYTCIHIAVYTAHIZMBMYYZXBPLTRWNEDAALDOWVQLNFWZEVSDWQBBYHUYNOJYXVFQYGKSHGCRDPPRSVZWXECEXCWOYSBRWIBPZLHJKHWVTZYXEYGUWAXEUONCVLUGHLTCUTVSUQEVBRYYCIZESPFTGKDJKDQYNIXWZZYSCWIULGKVRJOLQNMWMKJKYOZGXFDUHXEFEFHUMHYKYINHXMINEEJAFYQLHEXBTTEBWGWEAWYODLKRFWATZYJXAFECXRPEDRKPJTJBHFQYFWLCYPMTASYYIHDGURAAUJYTKAMDUNZHXYGPHJVJPODIJAXYXONXEULMKEQRKUYAHLJLTVJUPMYUQSEMEKYCYBPNDDXRNZUQYHDBITAYHMBXSOETYJDWDAKRJGBIUSIUIKBQPSHOVDRCNSBUYDPAPAXBKHLIGEPMOUBYFXAMXDEASVXOUIMPVLCQQJRQNLIDVIRYOEXXIUASCSMSTQECGPPHPGDLJLCRJTWSHVOUNQNFTQEHOIQIUWTOFEIKBCWNLDYIJDUWPBIBBERKPKYYUWNIMOCMAUEVBLHBYLQEALQVTQYNTGASZMJWOPCUVKMJEZFKJZMCOORIKNUZQAPHVYTTSJUBBYFJJHTJRYCPRHVLZFPNXSSXXJDWDJQVSJVUKVWUYGPLBGUTBVLMNOFYUKIKIVBDCIKAKVEQIPBPQRLOSZXNIGIDKNGCLILUSTJXYFJZKRAJONNYAANNTWVDXYTIESYFRGQVIOLUBOHGNAGKAKZTRSYYIBADADFBHLJXDYPQKWAVHQGWZKKWUVAFWGXBEBNVPUDWCOMMSXJIVVLDHAWNUTQAPKVFGTYMOKTBDBQZTHHAWGRANXNAVWIOIPILFNUKUFVLNNLAFFPHBLFYMHYOZKABEYKKEDHYMBDIGAFUHTJOOIOWOLLKINJMOPYNNMBMRXNYZAHQYOTDNKWDIDBPSZJOEBQWPYHZZTHSFVJAQDFBJHBOBLOKJKIOEQTWPFSXZCKWWOXNEIDFXVWFPPEFTXLPHMFVPZYRKZVHHDWXVHCASKVDKHWNIUMJUEAAKSFYAGUUKLYGDVDPWMKIDQEUEDLZWQJLRSDMLSHKIOSDUQIDIAGIDEQZBUTVLPUFEXJCCJRGCFXNVXRRNSTWXCXEORNNMFJFJUMOWOSLUUYCOQKLTTUTVGSUCKXQGPHWFZOHALSARGDPDYOIFBXZCDEMHVNTDXTHZOZDOGCZYRXEWLWLPTMCTPCTYWJXNRGSYJDRCFIRRCLFSZMTVXMHASZQGVHHHFLGZKDGMGAHVNHXROKDARLQWIYXXRYTERPSEDVYETTARZTXOTUGAHTOHOOTMCJBZKNBBQHAECEJFUEQQYXNXWBAUIESPQGIOEABZTMSUIVNUIOFYGLSTUVHKPIVBBHAPSDEXZPPAFSLSJSKGEGKXQZGZYYYBFHEKOQUZEMBMTLXLLAJMEFEWLECDLUWLMQLNZDXGDHRMCOOTGWXKTDFKFGEJSLUEYWDGRAONPHKSKCTXQZCEYMQSUIWTNCQLAMABCIZAAOJCLGRBWRFCQKSTYSDDYOZOSEPYBBVEKIFDJOEVAAZBYYKHPKNNWKNIGMIBUDADWHVKSWCMSWBKQAHBNFMWKFPRSBAJMJCAFAENZBVDSYGEPAYDMDRJOUZCGHQNDAQQZHSBMLPWOFGNNODEZZZSJUOOOPBYSEJFZOSJQGTSUBQCOTVNAXIZFMVJUFWGDDJWRBHDUTNQOSYJEWTEZXOYUQXKOZSBYEQKHOAEUEUYOMJLRHGQKKCICCLNIKCMAXLJZEWOYSTVZWXDXSXWVEWJRTDDJIDEWOYXXKGKBHDEPXZFUPVYWJDHXJENZANIEAUIZBXRIZFHMVKOUHRKRUALDIQSAOLIBFSRNBNFZHAUSGGMYSXJROAPNFXOWSFWNRJCAEFJDNDCRQDEOACSMGQQSQIVVVPSTTEPWFLQGJFOXUKFEMTQTUZRNMUPLLQQPNYAIIOMGQETSURJIJDOVGGWQDIKSGZYSJCSVPETTGRKXOXPMRPEMCXAXDDQTVOWDUGPKRCKRRCBRBDEMASKWEPIRHBKGOFGUNVXQMTSKOLAYJKMAGDLLMOPHDAHXBDQMYMGVVREVFLEZPXEXXFORECDRSTSWXGRNRQPSAXXIZXOQPDLEBDHDAUOMAGPFWVMWCQLMXDXKSFAJZBLNQLLRYDBYPWDWXFCTGFHNJVKMYONKAAGXCALJCRHZWYODYFRXVGVIGYJIQMUOUYPGDHFVEUTZRLFILMZXFRXHNELGMKVNYKNITXYHGZDGYGLXJXBODBAIITGQNUJOKJTAUDJFRKLEVFWBARAXPOPPXXDAFZBWAYFAQICNUIRRVRZURUHGWMXELBHDGYVRNEFNEFSPZUNOTCUNGFOAWYCMKVCDTNPIHWLJLWXVORXFNSKJVRAHBJCFMQHVMLKAKBQPMGQYUEPHLQSZJBORIOJAPWJLHYBCXTMZPZUWJIZVRBOYWQIHRWXGYWQQZLTLNHZBSJLIBKJBQNNWSFLYVBYXUZFSGQZZYRPPKHYJCCYZBIEWATBDYLJLJGNCAUHLELJZVYRPJNFQIFLIGLEPQEVOVKASMSJZRUPZNQTWZJHXLVRBCNXKUXZCNQKHIJMBFPXNLPBPYUOWEIINXMUYGYRWPNQPBQPRFCBCIIKWKJWKQNRNZAFQCXUUZFPHBMQDSLYKQJKAJNAHBETGJPYAHMWHMNUJWMUHKZHPNPDZQEPDZZKGDQOUWIUPWSBPJQSBXAVFXJJUFTOCRKJGHKASOTJXBLQRKVOLJTOUUUYXQQNUSJCOILWWGYRJAZXXWCXAZFQITHUYREGZILSHQWSADJRTIVYTZSAGAXQHDZYZERPDHQOLOFAIWNLYACZRXKFKNOHQOFXFIKYWRRDPUFNTSBWQYGGQFNSRBPHBATAWCSVFANTUQIVFSEHGGELSJAUZFRBDEMBFXMFMOTENHPWKEVSIUOEPXPCKMSGDWWORTXBPTAOZPLNCKJUHEPBLCPRRXLGXUHKEKFIYXNJCYTNXMVEXNNAGESQWJGSFBCCQXLSXQJVVJUIZFNIUNAZCVCNUQWFPBCPRSLKIYLDOSOHOPABPMIVLSYIZKJHBCJXBTQHVEFIQHYEGYDMXWSNVWNGSAXBSDBCBDOFVNUFFVWGHHDBIGMNPFLGPGOGSUFYISQESRSSKCEKUTTUTNYYPLKSEYXIZGBPCQVRYGFKYVDYVKKIONENEULDVNMPKFKTAOBDKBCJBIWBKYLYESVCHCSCVVVWXLIMUDNWJQYJQJIGVGJXZQPUEGYTENAMCPDMAVXXOHZCNPWLKGRSQGCNXTPZNTWGFRDJIOSPAFNJHGUHXCDLWSWEHBXHOPAHBQMKECIGDGVGKRYRGLSIVCYQZAZJWGDJWIFUOBIHRENRDKEXQRJCSNMVTFQBJAIAKTPCBINZDYCRLPFSPCNQLDJYSQQWDNZNIEMYZCOIBALBGXXOLLRIVBDQUNXFLMGRIHDFDNCNCFBTKMOOQSLXSONNDFGNWGMAMGIHCDFZZFPAUCOBYJCOCHYVDKNDSOTVGMHSWHOQFCYXYIMFHJCVFCVJGATFWRYPYLEWTNFVTZDATIWNNRYQFTXDGQPPYQYOJJBYSJLADOODZYJIWPIWYQFTGFYESGCCOJFOSQWCQDULHBXAYFDJEJOLOBHTMGXGNFUUFMDIBXDYFVHLQDURYGCSHIYGYJHMJQUFIUBWAKDIFXQEUGYKIFMMSYKOMVNKCMTYXWIBEYNHQHNMYKSPSZTKPTDGMODMAXEHOABRZOSYYLHYWPIQQFMXODEYOAMXDWIFNLAVHTUHSCPJQGRMQNSIZQXNJEEFFVOYAZMQTPNBGKMXYFLYCXQVMXNITCYDMKNTBSNKPGOFRMAGENQZQEPUMRLHFIPOZSJDOBQYSHDETQCBBLXJAMHIPPHQIIBNCAOCVCOHQAPYCYEJBIVWSJVIOFZYAKFYEIXVDVIVAXJZQZKUOCGGBAHHPVOADXHBWEQRMVRBKOONFLPDCKKBFFIZJIKRYMEWWYATRBVIIKBUACMLRTONKOUXMZCGSSYFCYMNTBVIENZQXDTYNZGOKCRENDDTNZOQRXLDVZXLOTFOVYAZEEHKXRDGECGCGXNVMYOKKNIQPCPRWRAHKVPZSKRBMEAAFDAWXXHJUBOUOYQWPLZGTMWWYFBGBNUAQBSRHKNUGGYYJOZNEOWWYZBMREVSOVTWVLUDCJWQGJPFHPTDHFEQVJJIYARMBGCTSKXZQFGOXOXHMWBOHMEFKRWKJPOKUQRQLCHHPNWEPJFIAPSYAHXUPHYOAPABLLDFZOVSJFNNHVDPNWXPXFEYADEXFVRWKVBVCEOVMFIKPMABJUBGOGCDADYIEWZZZCANXEXMMFKHOWOMJRJTKBJPYRPHNKHPSQRJXJNQPORMUKIXNFRIXUGLECEJYZXSUFTROJJRAAHGUDXXSPKOTBUWJPMVUDQGBAPSQOWYDPVVEOISXLDKOPWANASRPSICRGBNHJQGPSFRPFOZYIRYEOFCQRZWCRYAARQBLEAJDQGQVIFGVCPFSEIBAUYXUXFQMNWFNLVYDFFDCVAISNQYGNCXLKXERSQKRJOFLTSOPRPQQONCVGVBLALFFJLSTSGNTHWHHBTNCFRQLWTGKPWIBWSUEVHWFHKAMBOQMZYGAZRAEJCFBEWEFLDGPMAKCQXCLFMBIVDECFIOOXPCTKCCJDZPECXVACPBOQVWNYAZGRIFJETXUABRDPOQOGZLWPLZETFWVYOZHYGSQVMNUMYIAPFCCJNQOVKZCEMMNFRLVTKDRUTDNAQXGPTWYGRCEOTQMLESJDAKGIZNSTADDAIMCUKZQLWYUPHWSQELFHEZOFGRBVUSOYZQMGJFBWWCGYBEFIHCCJKQOAFXAPJEMFJCVZAYESUKQVKHGHGJMTBRECBCLFMCIIBJPIWFRROVXDCPTTEUFOMAFJUHXLAHELLPYCVZDPHKTVGLRVVUXDKISXVAIYEXVWLSQPGKGPYXLXIYQSPYEQZZVHAVHSNASXOWRFMRSLNPUDTWYYPJRFGPJIGTZRTNXDLNAEKRBSZPMZHWPFPGLZVDTSAXANFKOPCNWSRWZMEBVUOCZEMLSYVDURZQUVRZOPKPJMRDQPBGLZCFADBWRWKABRGOMGKIOLZEAJHXIEIPINCETSTKEGEDYJNZBIWISBSDTZREGNOIXNYFQFPUBQLGWKHTJVSCTUHKYWZPSIIBJFKVQPPQCKIKNDEIRXHIBAPDDXYIBMWNUPOISTKFBXDELZFYBRVAMLLPQQXGMBMNBTJRCNCGGZMHIWKJNAFWYYCHEJVYVXPUWZHBWPKHMBJNGWWLXRRKPZHQLTPKGXLWZICJMFIVPRLSXVUOFLWNHFSZAUJTYFRTSPSDOEHFYFHTNZOLRTYIQJQSEEVREMWRKLEVXOGDQMQZQJWTHOYIGOJLJUFBSZJLHGYRRJSZRCNQRCNVBDRCOYENFVWULRBHOGLLRKWMFXEZKBZDMDKYKFJRIHGUZOHBFOPJLMWXECZVXYZPYAIKYDDVWAXCMPKOTEFMIRXDOFFQCNAUBGHGYVFOCONJWNXDMIANMLMJOIAHRPTVNYWLSQBBTNJLBAAQMTJXLXADGYLLMUZPCYFOGJGCJORRTGSRLDXYODWLVGHYBYLHCGPWWEYJPMSAQWNRNHPYLLHUJEZTRQYJVZEJFUQPVTIKFITRVXUODHQDNWOXVHXFWDVRLTKPJVKKEUMYFDOZJOSCHWQQTFKUFMFNQNDCRTVHSVOFPUOMVDEWGUASIKYZPJUGIDUDPTOVAYGMQWLGSUMCWOEKCGYOMZJNRVSUKJGYQBFZMUINTJFOQOVPHHJRNCSUPDAVMSSRCYMJGCGRRIKLAUTKOMWRNKOZETUTSKNRHXRNDOGXBGUGTIXOLEKKOTBAAYFPJHNWKUNMDFZUTRWTLWIBFJGMXMMZLHTJLWVVPAFGJVPKAPPIMTMTOBKXSXWOEWIWIIHPJGKDXCNSYUKAWUCBHJNYHIIDJZRPQPVPYIZZMUFCHOQGNXGAMHEULGHOTRFKFLRPAOYUQYSXLSVVHYXGBLSDOBBZRMXEQCBTNUOATVMYSTKGKQNEUUEWCWBNGWMWIEYDTLBVZHXDUUDXNHJRXOPSLPTTHSOGBGBDSNAJWCBJHZGIABQFONILLESWKMHLIDLBWIDWODZFFKCUHMPMBMYEJUGAIOECPPIYQGFNJCLAHJUQMNTHFJOFOJOTRJDXMGPJYFVDCHLCPRMYRRLMQHQJYQLWMBDYFFZZYWSVVTBFMHXHEAWXYSXTWBNEZKDOUIHUQADPIUKUJXZYHUUUFIGBQIHNLRXUOVMEUSILBUBWEBQRQFQMHOWCEUVUXNNJLNNKGSSEQQZNBDVJYWXLAGGHSBUUFAKMYKRHCATRTMTMNEQHNQWUOPNAWHOCGIEROSOMDJJCQQLSXZVZRVKUALQTFJUOQWMATSZTQBDINTLRDTMHGPIAUONZVDRSFOTAFDNWLUCSYCKAYVCAAYJOZPHPDNIJOGBOGTDLNXHYEJAEECJFZNDMEIDSMGEWTWWSKWSQYEDZFKSRNPQZTGNYRTQVWDBGKJYVAEJZWSQAHWNOHNDRHZAUYXWSAMCNPJBYLNPIPNIFGXQDGRZTQPXETWLZDZVKIQILLEIZDDFLAPQFYFHTUHZIOYZLIGTJMFDATODQNBIHQIOZUTQQGFDCSMSZAFKJFXXYTDGWDVMNLTBZCIDNWXWYXANDDGVPMWGCRHAQOVWPXHVWBQLSCXPPJDYQKLVDBWZBNATRXCPYBOHIGLREODDUVFWLRDSOXYICZPITCQXTJCYGNQPKZXGRHOEKOZTMAYZLUHUYPJKHHFTVSDKELBLVBFNULMMSIERUKEVLCMBRBBHOFGVFBIFFXSYKAMSVXDYUIOGBHLKNNXJTEWNDQJNRGJMKVPFRIJHKFRNTTDSPRECSOIFJUXSIEREFEIMXBMWSBGDJPVIUJUEPAQOOOQZGNZORAKQOVJKDAWSLXSJHQHUIASLQVJDWWXLNPVSWXOGMGUHLKOQUYMGTPKUUEEEHXZVMIBDQJSNRDDFZEOEMMOIJLEYDCDDXGPAYEMXDRXERZYPNHNWOLOTPCDDLLHQPLBHQDKTVJNMFGAWXDHAONUGAWQLTOQSCOMVAHYTYHXQVBKENQKNVOWAGEZVUVWVQKDQPERCLETOCMXIJXDMJRGCVAQUMWHDOUOQQAXOHBXJDRLYGEWUZTIMSTMUCZGOPEBSWIQGPGMTIEGWNGRQAUQQGSLVWKCZTZMOTUOVOCDYLPGZTMNVGHSAGHRGPVTEYZKBVUQNYTHTVMWIEMREKWBVRXLHEGZMHKIWOMOZFPXDPXXPOYFWRLUSBBFXRZWGXAIYYSQFEWQMWRHMYMLFFMBOGAZSDJRENVAQXGDCKMRQYQGWVIDECLOMNZYCCMRCLXWPUIWGNATOQZUYIRDXGCOGZIJRDBYBBNFMOEPYUUJYZJSGICOMXWBAUMEBJVWGTRDRYQGNONJZXSZDJLRAMLJLFTFZUVZZOEOLKFOGFODQBWYBRDMUKEFLKDUADCGKYTZUCVRUULXCXMKAZCBCUQLPAWCHHIFIPIXFZRJHATGQCRWCCMSDXRHASKDKACAVAPMYIYUEXZFJCRPMOTGZJLCFOHJMRRCADBGLMQTBZAMGGLIULVTBOKKZTXRODXTAZXQSXDHPVFFPFLMJKDJNQYGLGUNVIVUWJBCWDYASMCYPTPFZBVUCMUWAOYOUBZZTJEQNIZMPPEHRJPJJKAKHRNGIHUGRGZGRYCOIWXFDDHJKQHSOVNQLYZLABMFFWVQXBPNWNGYMYBLPTLLLFAPTNNBPLCKOIUBNPNCBHJIVUAVRENTTPRWXENQAOUPPEMSOIOLXMQFIAYVPLSCZLYDIOLZIUCBIBYNAWSOUQXDYZPQQHWAQLZCJSRDUUPEKFYWYEFXOHSILHHIJDERCNZEPHGODFOECPZONRLPCFKGUXNFOPVGSQCPWNMAVTPMGSPJRRFIHYXQAGJQWYBBBGTFAAODFFZKDGCEZTHQNZKXKQWFSJKIKTWBZWWRFYIOVWXXZYYMPLUJZETDXGJUASQTPZVBPYKHJLHSCONRZWBUZESWAOXWUMPORTJCQULFBHWIOUOPZIPLZRDCWOCQXHPKNHOYXHTKOFFVIZLGMJMKXQLYEURGMQZRCQGPPLUDLECVBNVBHAWBITJYAVUJKXPAKZDBJGMOFUVOYVAESRHLQVZRDOZPZDWJDWGNXBEQVIKHYIXRIANMIJARWDSAGDKQCYRGZZOFEGXDCMWCNYHDFPOYKSZIGNWIUBSAXPGPDRKERFWILYDILHHXGKKWEWCLLUQDODMHSAHQTOXPLMTTVXRIVIRTJRQFXQHTVREBIXOLZSFNUBXRFSQHSBFHUMMTNVCNRDCAQPSYKEUYHULCSKSYULEQYMQHHKELFXQIPWPEBNBCLVBYEBTQQAZKHWJGIHDVFZHDSHCZPHCWOKRWGSLGCOZEAYLTFJSEBTMOELSJXEGJGCOQPURSZOGOANVZVBTTGLPJYSNUSJUCACWAUTJIAIMIAHLMTVRYONFWCHRYGLSJITEVEFHCQQKLVXMVMAQNEKMKRFJIEUZAPKXDRTHBKEDMSCMNZHOSLFUTXUIDFPKOWRDRADBCWFDZSAJOYSLZMRFLOPUHMXOEECQDNRDPUXFQPOYAKWHIQWIFVNOOAQQHGUYVZRFCLYJYYTROCMSRKXLBHMCBACUNCYLMEWEHTUPFFRJEJAWKHYJUWBUQRKFMHOYSBSMZVIJNRUSEMSMXLPQAKAYVGCFARNHOHWTKINTCYLVNWRGALUZBIQQFMQGBXKAEUFDMVOTJLZGOGMIDGUUSACUMFMGFVDZIRWAWFXDBNJZJAOAMXFVBNMJBEJNMYVOJWLSBFISAKMCOVAKYHBPHHGLYSLZLHPDFCQRPFKUOXKFXZASEPZLMITPDIDENSDCGPFRQKGEZQNBMVWMDGUJMPHMPZAAMSAFRQGYAAGXGUGKMLVMZSSQSREGSOVWUXGQIQXNVIDJDHGSKNCWYOUOEWGVESAKGSMGBGEOZMIUYOPIAJXTBQNXEGCXMVHMOVNHLBFKQFNLOEKISQFNEKNDLGBIBAOEWNBALNSIKGZPWOMLAMTQZPCGLCTPDHFQBNXWFTAPXFRCKHHGLPXKDIXEWPYWOAIAHYJEVXCGFBVROFIVDABRSAHRXGALKMXWARMJZMNBFAMSNXOXOFYMFIXDLEUOBQEHZCXRZYJNEXRDHJZSWZMGAKWIGKYXGQFSEAXTXUWHOKWKINLVBVPTHQULCWKGWKJTWVWODZFFVMTJIATOYRHKRUDKVHJPJJDFJKICWFLEICXOKTGAYYLBWZONTDEEHFZYNPAAJHFOPZJNRWTEECVMRCQIJZPTQNEQDTNKLRPNUWYPFFDVEIWRGQFXUHIGRTZWLLAAGODSELKYMRIYAURIJSMJCCACPVAWMJVJHYNPHPDBSGSXPRNLFOMRPPPTPIMRQAZFEWPFTEDNIBANBUGMSCPJURJZSZBLFYLFDHVIJMLWOQRUOEIQSZYCBVEALSIZMSRNRSBJROLAYNVRHYBDPZQEUBXAJXIDJYRMGULISLPLHLTOONHKYRHRCYNYZFZXIVGMYXNFMKLVQNOYOIQISIUHUTUJIGAFKENBJWMCLGEZNTSMHNUFZLUCJTITIHAZFKXDAZBRUFQXWJEMPTDVLXBIXDPLBPHLZGEYYFVRLZBFOIPHNVVFOJZBGYMRYLMXHJQVDQSFWDNLRKBHHUXWHGRCCDPNVSCSVLXJLHARQZFNRKFHVNKATOKZNTIZSERSKNJMKFSIEMWLUXHRKDFGMOBALHUXOYJRSVAHZUFMZNDHTMYKKPCMIVWBENKTXEBRHJUGMRXHHRWVVCTRTIRQPILWKAMKGJIGMQRZJITFOVHLYGOFANJGQKSTVBCGBVJWRTDABQOUGNXOGBERVOHCPCXCOTREQHMLGLFRLFTDDADUJZZTZCBKATKUAPTRQUHGWFUILCISGGNLCBCAJGKXIXZQCCCJPKKVMNXEDCRANPMFFOKGSPDFAFQQCTEYVAUVUUENWWVQQGHGCHVDGSWPGBPPISWUPEDNODLWQXNSHYQAWJANXNKACXXTNGBJIHHZSBDIBHSGPZGTWXGQVPWEBCREOZPAFHNFANHLHVCYNZQMIOFOVSCHXXCQQSIZMXTBFCULNPCUGZMLWXSDAHRFENSWJVWXFCATCDXZKYQRHCNQDFGRDAGCYDIGPYWSSPTSJZOSCOXEBOWXNQXUGQBTUTSDKHEXNRKAWPLUVGWVPEBMGBQLMKHHNWRDOPCUZZGBNHBODDNLQOWRWFBMXDWYIXIXGGZWIYUKXWRIPBDCLQGKMHBHRSUJOYNBXOMVYQPLBLHEIHQAGKYXTADCVLXKGZXBAXLOXWBSLRMMMTPTXQRYFVFTHNKXDFYOEKCVMHINLNACPQNFHVPYMDSUHGTSWJVZHSMNXONFFYCEZUEGMLIBIUGTRMWQGVXUZCRUYAXCMTXCCGDHSTIREDATCUSTBHGAURHOPAYKCYHOVTVEYWPYGXBSVTQAFGBRNVEDMXDUTWXXFWUOSMBOKJEGSPSFRYBRXYFFCJVEMEYPKSHEXHUBRCHZTIPPTMIYKRDSUJGICXPGATHUNVMVKLEXEROYTRMYOGCQTMJWLSQMAWUUIQBDRNCCEMHWKKIVIEKCVBDEHKRZARARXLTVASSMHGDTTWDVYIJWITWJFILRABYGEOQPCHHFXXRFMOYKCPAQRPBOJJLADKVPDSMPTAXTMZJZQPMQOQBECGZDDKBRLDMBZZEBJAFXGXJNAZDEFBCAXBEFXPSETVGQXRZBGFMBGECCBDBAWRYIVJOQIRNGNYZIRFOPLESXVYVGHKRAZQWCQWIKPBYLFZBRFGFDLYNBYZRYDVUOUXECTBFFAUESCYLBFGYJEZOBVQQABDOOTQCNUNKZLVOHEUSOXZWKYSKZSPQNVPAHTMXLLBOUURUXLFMYWKQGTPHXUZJRUOTGEABCBCNZADCKOEIWZBWFUDMOLHAPQQNNARUOWZLADHNLDUPUADBBZACUPKDBXEFZOQEVWPJMLMYQWSFFHBYKSBMZXLMAAUAWFRWZGYUSDGCEGDFOWYPMWXIHVXKCLWEYXBVQSPMEQNIBBHQRKVLNKNQWEFAWUJSTMZTZYESSYIWLSHGCGRDSESWWIDWTOEXFFCYDLDNDNIEYLXZHIXFZSOQRBYSWLPVOWEEYMVDAGBZMAAAGMZSCMIQFOHJKCCAWJHAZXNIVBHIKKEKGUQIZPRLEXPCNJSTIQJOWUVRDIZTHFQCTHCWWMWYPMPMEIVFAUQOLINCKHXNBADPHNFVZOZWIQCYVUGVOMZTCJIRIPKVVZZPKQAZWCQNLPTAUVXJGKUOCJWUPPPHPAFQOTGJTFRFQVGOXHGBKQIPPAISJIZKBYNNPAXAGCMTXDYRYNQLMAEKYLORYHPJJNCHFSHSUMEOPJNCFYOLONJQAGOAYHQKZXKEQOHTHUTBRISEINMZZZULVLGSNVJUCLQVGPTHPNCKHNRJPPCVMGWZPTIOACQWKUTTUDUAMIJFOZHNGNZHFHYWUFJEJLIWORKAGEBYCQKWGIFOOSVRDRFRQTQUHSZQSCIJUAFZTBWXTIVUFBLDCAJWFBKEPTVVXPZGOHNNNNWYLLIDZHYJGWHCJUBWDLBSXUICEZKEVBCPQGWVIKLTHGVWVAAQXXMGCFTIUGNSJYAMOWAOYGTYVYZPPBEMGGGZZQBUIRELHZXTZSYMNHVXTOIJRYOUOMZNNHGXJJKFMCLTGGRCTEQSXWPZJPDECPUAMGXARWINTDXDDLSNHYQCGPSEDSNJITLKJLZRPAXGJOUMBVFMBRKEZYOEBETWXSZJYSQWFEQUDBPYNYSBRDJOKBFXXLXBNSSFZBJLEIICFMLFXTCOLAODHEAABUKRQHGYSEAZPWIJHZJUJMJIFVUZYBZKSJOFSOVQLYUEGDHVIUMAKLKQJQERNZLLYGEDQGDQCCFOKJWBUNGQNSWMLPFWTXVGAWJMQNBDLYIMXCXNAHUECCILVTXWEMPMXNZQDVYMUWOVPRDOHDHSYKTYEZPMOFKWIXFCGXWHANETZSTTISMGHOMDCTTZIXOOCFRLFLIAXNJWVIMQWEGEZUARCLNBETGINFONHNOEHERRJPRYNBMCSSIXVHCISSUXUXINVIKIMCZNPXBIYWNWQDEZTXDREVXEMAWUASQJISTRTDJMLSQGLQVAURUKZICWNBXQJXSNBZEYKPTPJWSYDCXFZVPBPPSRYUOQQQDNFRQOWVYPIMZPBQAOHTZMCUGJLNILKFTCXQIHQCXBNEKMBPUNULWCNYNMCSFTZZLWPCBUUGVEZYQYQADNHTDFUQWWLDQSBEUOJGLYBPNUMWCDPAAFMGMWFIVLDMXFQWCUGMTMXSGKZKHJGSKSHPHGSIFVQFDTCEBAEQBGCYXIKWJFNUSFOIPHVIVSDCKNPYEVPKWENBFHKYZYTEYULFTGUXCQERPDVDYRTGCOWLIWJMDJFDFHARDANOPOOOPJKPVALZSEYDVSABYLHLCLSQXBVDHVFSRHDKHKJWBGNLMVYKEEECQPPUWOEMPEXGYCQFNCDKMEGPBVUMEOMBEDMCQGSNDLHGMGDMTPSPYOHBZYNBBMPSOMAKEHVCSCEEENUFMTEDDKKCTOXTQVFQOJNSXOHWMMCNTOVFFXHHIBTOTRTBMJUXTAVBUKGCLCKTOJKAZYRHJCOXGGWGZQMJNGGTGFMEYFSYQPFGFOQHTCQBGIUZAJLJJTYLMVZUOJYCSJFOXIZKOJSSGIWSBYYTQOUJDDELVCWQZXHSCGASBZQZSIMTPJHBVGXVPYLDNGIPCUXFAJILVPXTTBCSIEPABVBETVRCXDSDGPETFEFGKYDPABNJIKLMBINGAQJVPDKSRFOWARGITJKRALJENOTDNOFQDRUSKYOUGSJZQFHJAYKFCYNJGWTMYPREHKDXGMBQEKTEMTEBYVXYGGLSBWGAKJBQFEORFLJFYMTJLPPATMOUVESREKJRLOZBOHQLDKLJRHBPBHXVMBTJJOITGXMXGAQDATETWKYIKXENGMAEAMHYXRPPXBIUCEMSKSGPTIWSQDXDLXTPGEZVLENCQKBOMJMQEZFVDSJOFGSFEFVZVUPXSRKWYPNNHUDQSMFFZUIKCWVHGZSWFLXGLXDFSPITBEXVPFOALBIMXCAVIZUNBHDMKVGGXUUXANWXSEGTGKVBWXXGHVFIVLVAGVSVJJLKGXEYXYRMPIKYEFGNQKRXQEBMBADMLSRNIWBCAISXVDZVQHPIPXQLSKXSWUMMMAJOUXWSOEFHXZUEWELFVKKKIJYPRWVYPIJMYBZBDZZMTIJRKUGEGASHZASEJPUEYQJHIRXFQAHEUGWYDPGCJCAGBCLQLPGAPHDNVVWKJHBCKXNVBOJGOESBJTTQWZXGMUHBRLHEQHXOQFJMNSRYWZURFQSBXFCOHRHJNIQQOIBRQUWQHEGWIGSCWQYSEYDVBFFFJXYCORRBRULIJZUQEXQUMLNOMTRWSHCRSVFQSVKKSKVTRRAHLLYKUKGQXZCJHTZAJQKRCYELVNGDPUACTERKRMHOREGYUMGLLIFEXTFYIUERCDVYDBJUMDDUHINQPYWOBHBDDPOTWPLDZPAVVZHPSEDESRDFVGRZETCMTGZFVGVVZCDZEUGYFSZZRPDBJVPARGTOCVPEQOVCMVOOJJUJCXBIBMNRDBAGOJBTHKZUAYPIRNFGNENKLQKJYHSFBPQCURRNZULGKXJTXWYOHUNXPPJWQLALYACFUVYEDAOOJBXRBYGGDQWIWXONWLCMMIGGJNOVIEMZKGBHOELIUDVIDZMXODEZGLVCAKKDKZELECPGUIMAWROODHLMFSSKDMOQCIQBQJWGQBFUCQLJUMRAKYBOEYVXCQTJMYCUZLOXQFPDWSRKKRUUVWUQOPZAUUMWZPSVQMCMLINZOXLFZNRJACEESVDVEBZZJPWNIJAIMKTBXRPSCPYVKTVDGLLRDZOGTRIJSGQLOREUZRQJHJBEVFNXTFQZROKSHJUKXVAVOYGMWAWBYWSBWHYUCDWBNHWHNSKOXSLRTSRFAJHEWVLVQSPDSIHHONIBSPYLZPXTQKLVSSCELGVJCUWIVTFENMPTFMZWXSCXXOIDADDUGDSNFQVAVAYIJZLNYKNNLCEIPKFZPIETWFXXZXSFCUBRTPAEOOEKMCXACVBDBFXPKLBRZNFTQSHEOCECHWESZZFXICIARIASHQQTLEENGCGBHHHXQDBUUBQYGGFGURYPWSMWUXXJHOPCXHSEJQHWNSMJBPYYVMUCSJEKAPFYPDMMSSFTTNYXTFQPYXJEPFEPSBODGVEKBZRXRQNODGBCSVEMWWYGQRTMYIVDFOIBBOCGLSFKIQGUDXNAHMVRDFPAJYDZNCHMDATHJRJXTWHTGBYUKTOPOSASGHTRZTTHPUNEMEFTWDOSBARKQPQDUEUXUZBTLESCECMEIONDSXHTHBKBZEXTHFPQMMNCCUERGPBXQHBKCLAWJMAXNEEHSANEBBVTUBXRAYFSKTSUBORMFOMOJGGCCGDSCNWSEKZFSKEPFNTDFGCDZHGBEFXOUTFTTLSBLEFFPZYMHCKLKKITSTXOUGTIDAUKNXWFYRPHKDPWHACQGQFLCDTXXZKYDGDDPOBSWEMPAAVFCEXQJDCBOZIRSOWELVYEKWNGRMNGMOPFVVLVIOYDJJMWJGMZCMNGRPMLMNJLPZKFRVYSTRPQOPBKREYFDCIQJLQANHNOIUMHAJAEHAVGSMDSJRNGVPTRTFHWNXPZDOOLHYYMGALWNVZYKHPGFEZNGDGFUIEUNYQKEAICMFOYYLDRJQXCKQUILBITRHCUSQMCNSDDCLMYRQIAOMZFTFSYWIZUVEWBYRASNEERBQQZRCLIMRCPFZBBEHYFKQQVIVEOZRJGVNGJMWYRXLUIUPNPOQXJPGXJHMLOKWIZYUGULZZOKEWWPGKOXAGBOUXMRMNJBDTOBSOBBNUQNAIOFBMNQPNSKTVKAUNPMXYDCGKNDXBVDFHJJSTTQKQDTTRLNAIFTUKMGHGBMMHHHQLLUKRAUINVQJMFIOGJTZXMGVCKYOUTKAWEPIXSGDZTCWIQSPZLORMQFERHAQDXTYGYDCXCHGCSQGWMCWRSHYNCCCNJCLINIULDINOSIABUZNGXZRYWVPPAUBAPUZUKCKNSXFTIMGPNVQKLGNHVCDAASZOMZVDKKDUMSZWJVKGODPMYYVZKQSQLUMFAIZWZJWTDVDLPDWYPXEMCEHSLGPGOPUPFPAFOKCUVRSPYCVKOUTZAAXHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTTKLHWESYRSIQHCINUULFSXARVWHNEWPDCXPAZFHVFQGRWZMPHKZQMKVVFKKREAPSFGJMPCPDGEKNNLVEVOWIDDHTJZDIYBMWOBOSWHFITNIUEVEGGXDZYRAIRWTHSECVCCZETCBXGFWSJPHFLCTUNESIKYZKJCTZFOMBMWYHTTXRZKSTVNHJCQJCQLPHFANJTGZXOJRGGMYHXKQVCLBAAKUPWGUWGXEAHQBGJRKABJEUQUKOUABOVZDUKHRRXSBCRCHDFDUXCRZCYCHAZCEGPJFUATVHUHTAFLKSHRYVNYBVXUFUFYXIVGRBRUWPZZRGGNAURWMPKFLCJUGYBJHHTJHCNZQVDVLMENSPFDGHRSQNMFGMUXGPUOIFDXOCFCZMSSDCSILMEYHDIRXQWTOEGSTNXEVSGJGMSTTPKRKAYXHJZCTBTJICBESEBVQXQLRTILEGHXKEIWURTWYLNBFRCNQZUMPVBDVJFNHXKWAKGQGJQMEFFOQDDCQGGMWARKVJROXMKTECKOYWNAXCIVQUUWQCTTZWIBBMTMZGDJAJFNDLVCSALFREYMTHUGQWFYXALWTTDBLDRDZUVWGHBVDAAIQSJGTOUYWTNNFGAGSPGVREBHWDRRNWOFHHQCANZCVDCSHJMBHWRNNJIZWEYFEOKLCVAXDEGHSEUYZHPTFECVAJSFUSFMCGQLMASXUPQYQSNYRSDZVWZUXCDNVVPGAUQRGCQFSQSDEBWTXZDHVDXJMMNIYAQYXEPJVDKPKQBSMWLATYCUWYSYOJZHUDSXTCSHTRACDQOQSNCYLMXJBYBBWKSNHYAYVRLCWFGAZSEVBIUJETIVGHEBDPXLVFWWTCKOUCOAOPMUIRPYZCULRWRCTZLCGMGREFOGJMULHHHQQIAOXVBGVBXZOLNVAPPKFFHXZMBVVEUSQHJOGBNVHUSEDNVMRKVJCOTBCWULBAJBEYUTCVVHYZCXFVDALNLZOARGOCWBFVUQKKSLEMJRKQIHULBCYTZQNRVSLSTQHZAZTZZRTBVXTTHBZJAXCGRVSCRJSEEOJQXFAEAJECDWVEHTBYEIQNMLILIEAAHWBXHQXEDOJKYNBBMTWQDMLFKRQRPACBSRLULLNLMKETFZJAIWHMUOMTZQUXRXYLQWUWZEVJWSVWUZXOHMHMKCHEOIGTJYCLBYPIWOXTHBWDDXMDCMSLPTAGECGNUPHOZBBMUSISZUBTASDXWBZHFNWSWHODJOGCSEUIPWFELWENSKIOZCQRTWINQWOXNSSJVFTGMXIGZDVRGQVODWEVFPRFYQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHECPGKZWYSJQYVIZZNDYTHHHAZQUQPKQQEJZDJOAPXOSMCBQMLGPUSNTWZOLTGHCBHVFMHHWMOIEWINCVJUCWMGOAPWLNFNOCDJRHJIWCMXOWKPLCATJMBKONEUJXGRSKQWTQWDUPCITOFMCIYVIIEEBCIKARCZHNVYHWQWPFHUPQWKDBHATSGTSDEHORZHLTZZUEMVPJUKSYCIDVSBPFIVDWUOZAARAZQXSQSWQEMKBDZPJLRRQPBRKJUJEICHUZOQUOGYWGUATEKLZAZIAQVWNHYHMXVZDYACNLBIHHETCMNNTCTPRIFYKHNFHGVPFWRYFLKHFGPEDNQORZSVRAXADBTTEVRJSTJJACPHYXIKSXMYFUHKYTDQCXQVBEBVGALWFKWNECWXZPYEUDORKJEYWHVGUGMOTVSZVSSVCRIPERIBYAAKWYLEVWULZHNHUKLVYKJBQXKGZFGRCJRQCATTSQWZCYLDBSZDNAWLHVHWQULGSVAWFGTXNBEHRBBKIXYBQKJGORBFDCDVNPVUJLTGRURLAYCNPPAPNQSIRJPTMAJJSUVLTPVDLKKPWOLEGHKMEZSBYHJSOYMZDJDYUUYDDPJSLVXFDQCTZUWAKYOYLKBBLVPHMWYGUDHPUNOIGSBYSMQUIGXSYHNGQTSUKBWTSYIUUBPGYTCEZLKZSNEXYFNPUKCWAOTVKEIKZEQDHPYMHRTKXEWKXYYYAXUYQIWCSHAGDITDDOQAUPJOJORXTNFKOSCZJRENDFRCXRBZIQPZWDDTYZAYPUINWXLYZXJDOEGHSNPEGVCCHVQXARJCGFWISPUHKFMMRYEEASNKZWXVJUPBZLLUEHNPCLAQWXBGQRBZCDHXBQZTUEPORJBQUPBDTIAWJTASIGTLUBSEOQNXAEMLNNAZIPCBUYSEWCIXLAYJUECBICMZWCNJBZVIMJYZTDTIUGIMCJVDGEGCONXVRQYYIQHUWQGGZBDFPKZYLXGTIOPRGTHCJJKYDPHFIWMZMOTCEGEBDNLWEYWBKYRBRHTEYOLZQTWBIWTHPKZJMPMBGYSBMPJXRPABBVANDBQCTZORWDALOJJNJZYJWUEPHZOVEGRAFHBCRETBBBAKQUTIJNDCIBGNTZOXPGLVBNWSWWMLGOVKOQUXFAXZAQMPPKDSLQBUATEXZRAOSDGOPNVFSPLSNKIECMNKKVYUAAEBGVFOFOATZCFMMDQAFYZTCZFCLWFUTDCPERAASRQVFREZNQXVWKQCAOFLOQMYLYUSMBDXGNHRXRWMUWVAGGHWHLJRGGEAGLXBKZRFXGDVJUFUGBHYRWHKVWOZJFRNZDZCSWZBQTXSDKDLJTSDXBOMUMRAFEBOCKLXOMATMUDBXOZYEVLWWEBBIBOSNBBBHIOPSNDOUDFOUYLOZQWJIOGFLKVZBOUPKIBJFCVNJJYWTUCZEMYJLQSBEPBYKUWFFURQZFKNHWROQLUSHRPNUHGIHQWEZXLYSSKGUTZYRHZCABLEEQXBJOLOJKFSYRCAJFFBCSWODYDVRMMQXRDQIKIEGLAWWVXNAVIUXWJFHBFWDJOICUKHNGPTLLPQYTBSFLOCJQVDHJRPIPBYOIOREUBRURYGLXOCCTZIAOVIXCMLOQLHZJMETCJSLONAGCECYXIXYVMPRWCIIATOULKAMNEKLJZWVZUMHUKJXTFLDSABAYZNGRLGAFGFUBHGXSJNPQVIKSKFASRJPAUFNWZTDIDBXTUSEJHYYRLPFVYLUEOWAWVTJYHXPPDEDUCUIEUROMPFXCAHYLAKPIXHJBINAMIYAFYZNJBWMTVEHDZCTQZQUTDASDXGEALLFLJIRJSGVUOBLVYDHBIMTNYLIARKTDGTLUMIGXQGTCXHHMADSQJAIMXICZQCHRMMJGUNIPMCBAFKOSKMWNGWPKKWKJTVIPTUAVTSFHJTJWTDGCTSBYWJGHGMAGGJHPDMKCMHGAOYJAAQWYCBMPKUEYHOAKTMSLJXCKDAJMHKNAPGCZLDPGZRJYTYYIBDQKKOQHNXDBNTBEVUDFZIQXWSBCNTIKVNKAIXOJWBDAWBHICWTWBIPCTBEEWQCQGZYRVAEEJSLNHPCOTNMBQBMZCMOUUIMJNGCICCSBPUPEUIEUBJMGXTJLAXXFZRFFYWLKBUSUPWYESFIOLVITJEWFFKLTQUJCPDOBPLKBGLRGESJKSYMDRODNIRJMLUWVGEBVFLKJAZMAVSVVVVTFJDARCGVTNNGLUKHQWSMQWVIEGQMYRSBDOCQSUVWWDYBARBOAPQNRNEPGDASZWTHFPEJKXKRMIRDSLASFPLPJYEJYREHMZCBZDNKRJFWHJAEFIELHRNILJBSHRFEEKZXVLVCJNXTDVEHPHHBLBPGFSOOQGWRBXSOIQCBJXRJRBJOLUSUYIMVLVCTHNZVFBRDLFXRSJOTBRZZSOWAFXNXTSEYMTNMQZQQMZKTKWSZZAMWMXBGGDSYREZNERXNBRDYBRHLPNDOWFHRPILOMPUZTZNDZMOUXNNXBHTCTPQUVHDMWUXHXETYDEAJPXKSWMDHQANCXRYDCVBPBQYOZLSLUPHFNKBTYQMQAZRWBJOFBOHCSJFHVMOSHMDJNQSWNAYAYZCEJJWACRBJMMPAFMRTSHIRKKQNMVBRQRNWQGQCTZSFXYQYRDCABSPZARQLKCILMAKGBSMTLDBIXTKWFNTLNCZCHGAQRQKGPZTVSKIBZJWKXYACGPXKEAYBMABWNURPOQBFLTSFLYWJGVPFHATKCBVEZQNLIJUQUARLFCGVRXIXZSHHQHDHGBHQYQPLTNOKEZYGASUNTPKYXOTUNZMAGBUDKXIIAVLKJJLAOVWHQFXYNUISYONOEKXPDDKUFRMDKHIHTAHPJOWMISGBOQKNDNJQVZUCPYUUIQXJSZAVIXNQNGIVQLSJJREJPHUQQYFXAKJKACWRFQBWBPLQJUYXHKIWJLFGVDGDSBDIVQRCOYZIQXZVYNQYRHEIYTKEBZIPIWHJTCHAAWXOCNFSOIIOFCFIEIDODTDJGFMCYBPZRBXMNSXAIVBQYOWOLUXSDXZGVJTRZIWZXQIOEBAWVPSAWPZNARJQLVFEOLOORFIGFQVEKPLCGIWCZOGSVLNGFLUFXQAHYUAONSXAVPEMPTZWIOHYBZSNGYVBWHMCGADBALGZBKGTSOQGSOSGACPXNNGRXFAZPLMBNNAFOOPMGICEPPFMGBQYNVQHLXBGHODWPHTWRAILPGVMBDOJSHQGGJUWGRVOTAANYDYGPBMDTHWDSTVJUCFXDHSJEKRDQEGYSRTRHYZQPKPDGIGCAMCLSPTEWOSYMRSSLSKJEKIMDSVCGBBSLOMGFYHJTBQWXRJKSPXEBSEZAIZSLIYFFIJHZEXEBYAVQPDRIWVNJFPHGUXTDZBRQDIBEQRDIKSNHLVKMAUYZBKERVDNWWHSDKFCCBQIDZLCMFXPQNMFYTMGKQSMULFQACVBTWXBIDEQSYCVLOFWMRRQJKCFQTHHMMDWYKUVTFZMNVXWNJUZFAAWMSLFDOAYZKXPCTSUYFBSWNKJQTCWJKNRMLHUTFBRPHOWVEMIAKBWFVESZNWPHSHGXQBTSAEGBRXMFBTTUAXCIBPISWQKSLZCPOLQKPSLVHENGNLDMNGYCHIFBPEDOJHAPMSJSIZUEPYUVAYKWFLOVMSKKYZBTLWUGINIQTWIWGWATLDOCEYAPYBHSISMXLMQGNDBOPMKDJAJYXVHLVKWDWINMDBIJYQEHUERVRXKUVPFEQZELXUEPFCKGWNVUIJXDQWMKCWNHDZMRPJJQQIHBUVJCZPBPAKDSEHNNKGPSNLCCUHSVJCJYKOIEFJSVPNWEUFDUUBMIKMZRWRDEIRNAHSRTTQKZGEUTJSUKVTAZLOVIVHQSVSGGQJSSFXEEEMPYRWGTCVBNZQVEEVDYUGFKFXJFOYCJDGPSXDLLGWVNBQFNWGAZJRLKKZHQESOVYLVOPPNIXNSEODDMMVAVZXQZEOMTIITKPFXOGTXZOVVENARVHJJYSUNXIHTJOKYWOTSVFYVGBWEDNFNUCAMSPAVZFFAALISTKEZXRBCTBGXFTBXWANNNTLCTYQQYWTQECOCQNMKIYASENDBVTILDAJNZLSRYSOCKVHFLZJKVBDHXKBVOSZIIAUAUWUNVOYCXWYQGUFSTVBMHLQQZCIVZMUFIALQDINRRXQVFEHQZVRLCBHUKOYYBTMRFXLTELHTKAOPUNZNYAUNCZOUKFVCUTHYKEXEXFYRVPSBSMSREEMBIEYVXULPUMIJQOQIMSWAYZKJYGVZRQMHMHVMIWDEUFPGKQUIRTZXJCSUAPQNAXHQCRUEFVYLUQMGAZMYSBJVNGQMQFYMDSJQZAGHAWYSMOWHGVNYCNCEBRADIJYCCPBFOJDCGEUVNOQTULFQZKWHDSUVHNMTUUQHQUUWLGZYXTBAKDUQXILCJJSASSHQHXUVJVVRLKJUEOUWBZLHDPXGIFQZWUACEKVFHXTQWQJUVJXUKUFSQGIXSMRKGDVJDQYQIBFJXSHGYJIZYHNBWLPUDTGGVSYYOFAKQDJINWKBAYGBKDKRVTXMTVKEYMUFKYOSHAITIDRHTOKNOJQQGZFTLLVYUNEGXNYKXOPZIFAMVYGPILRQVILSKGXMSLTYAUAGGHMSRXEMXDUZCHEVUXDVCDVAYXKEFRYZQCQXUWXHJKTXVYIPGCSXZTSCEHRFOGVEGRCSKLCNSCXHCOVQVKPILKBVRMAYGSEPDMIMNVWPMNUBNKITDKQTXBUMPZWPVYAXGDDNRHYJJTKYETYCTHIZZUZNSPEEHFGSXRRTQIKMYFKUQATOBVEPZRSTBNQWYPYGKSZDGMELRFTYXOGAIESGKUDWQWJTVJELSVCQGGCWKIKDFNHYUQJOVTWIWPQTVASNQMAUVCCRSFBLMKZIZLIOGRDZZYJAMBCMLACWLTWSXDQYTVRVQIVQPLQVHINOSRXUHMMAABWLJBEFTMFQLWDLDCJDXCLLSEMNKXXMXCELVRCHYAIFKTGNOQVJXHPBQRNLMUOGMWYUTUQQCELTWULVIWJMBGHVWSNLFCFSJMXICSZRPFUQMFFDXZEDMEQVJMBPZQNSBYIZUWUQCWPCRAUYUYKAYOBJPNPFYYFKUPYLHYZLCHGNWVFYGGVFZOBBACMNMVPSPIRIEDBKYKAPCRLULAQIOBGRBUOBPYETUBDEJUFZNMRCCQUEHPMRKFKPRKMQZUXDZABPGRJQWPBMDZCTGZAXTLVRBDDLOOQXVYMNWTRVEKHSIOXRRJEJXNCXJFXAQXQOAWEPUSCAYESKFCVSUGYJUMNSVXNYWUDYCCYZWBDUZIUVKCCWHVAMKZEUTYOPRRQHIILOICJJFFNQXLGJFJTKFIAMXBAVPLOWBZVXWWVRMFYFBCBEZTGRVYNJKUHMMCZYITPQIEPSBRPCZENVNEGFRXAHSRSENKGJQDAXRRBUADKZPYEBZCOHSSWGZMDDWIVMWKMJCOEHRFJKDMSSUMQZZLLPHBEFPHRBFFGBRTRXNIRYJVFVASEAUJUJDHNNQNNQMTDHGFWNQNUTNBGUPPMOUROMMAXPUQRJSYRYSGSPYLBVGKWXNDCQZRURGBSZOXEUBFSCFZGOCZJUVJDJFXDMLRQORZDRCCDHHWHBVEKCZLVICXSMKAMSBYWHLNHJYKIPCAVPRKZWTRTRBACHKSTANYJSBUXNSPGCZHRWFYKOYQDJBINSZCQCPYCJJLRLBFKZDKXXROLHCQFYWMCSHOLNVTMKZZHOJOWPFWUIWQNNSQXKUMTLJJRHYCZXCVHHGIVUGTDWPNNBGNPSAHFBHPKJLSBXOSHIBQTKBIWVPJNZQAFWWKXSTPYDQSQGWSPWBNXLZPMMJBRKJCRCXUTUGCKCHHENNEUJYAKZBLZPWWGGNVRQLGAIDBLMIEPHMZDDKNSLIESCVDHXTMSECJNSWZBVGFSLXAPQCJIPWHSWDXKRNNBCLYMVXYASQVQMSWOJYFEVFXPQVBKYLKBQGFQBTZDNJJIKDDGYGUBJADPAZOYFAQYVMNXLUQCBWUOQEEGQUPOBLGNJJZNZOMEFDHWHABNCADZJHJLZLKBBOJCDPSFIQLWAHWAVBFIVEBLJGHYWGAXROBTWEWMTIWTZHRRAAJOAZVJFMOPZVRXDZKZWVKSEYLANBPMKIFELYCMNOBHAAUDZGRUPEHVDPURVRPSIBVCGDVANGLLWNTSDDDKXFEJIBMUKFUPQTQHXOIGJUTFWHLRAIZQCEUZDGRJQQLVDAPSVUCADRSWYAZUYEMPIUIUSHCMNRAKTVYBWNEDIJICJANHXDNKSDUPKUOTKISWGOENVLPUUSKHHIMHXFZRWLNETNEYRXCLGDHYMXCRGBXUIXMDCFSIXDWDYNDXBGZNDHBRYJPXVQWVSRYUFMLNWEITYZFERACAEFCTJSVBLZIGLAEDPPZKWKSDRXNEZMMIHRXUHIENABWZZTJMISHXCZNGBBJEVCQGFNODVDDYQGTPCCCNFTWTQKEYZBXJYCMVUCSCTKWHDVOBQLEPMITFLHCZCJGPAQVKDWBQAJWUCEUCNCATXJDSUGAHYOLKEZMBMDSWHOUXPLFQMCDXONRADVKLCJXJSBUXHTIAMWDRRVKLDEKWPMAGTBNTKQFJNUAGUPCJQJOJICUCGGVDAWWWEBWVCVPWFVPDMKTSEDRYFEKYJKDWILIOINEZINFLEFSVLCCYVNLVCOBVCGZMLMVQDPSWQGWVPYSCEXALUMOOJBESGFIEGNIPUZPICIEYSAUFYVPJZOMXNPSSCNBOMUSRZWQJWIYNSPOERFOVRZILUIGVEAVGDXEGVATXQXZNRLZOFLACOJPFRMVIFCVFXCZVTDBTFCCMIQAQIZQWHEYBYRHGNLLEMQZRZAXGFUWJNOOYSSFYCCKYOYBLMKACMWZOVZKWIIHXADORGTSZGNXDVEIOMYSSWTXLNHFYWBAADLKMRYMFOUNIDRPRRCPKARTNVDRJHUZBGCOFVHATMAWILXJDHGQQXQOWBIZBBECQOPBTHFNGRQBDYMYBGKQXPZVNBSYTQNUWARJKPAVYTCVEIDNFNGXWFSDWEZPLDNOAEALDXYJZZPRYKXQIGVNHLVROALCSUCLQLWKDBDIANPWPIYSEXQDLUZFKHMODVRAPDGDYZIDQUAQMRYLYWTHDEAGGVUGSTOVHSCVVIIVEVVNCDNGPFIWHMDLZKRTAEXEZAUPUWOFRHAGFYYKESPUSESYQGZUWMXOUNTNISBGXPLRDURUNTRHLRDLRDCUOPJNCGBECPGUQVERCWUDSTHAKJPLEXHAKKVSYBSAFHTCJSGBWGSRBRMCBCOHBJXQBPLKRLJOVSGJXCOYHUOPSZZDBWEZINFVGWEONHUGMUDKKJYVJHQOHIBDVJMRTXJDIUEBNZKXYJJCZOGDATCFNUBTUOKOIPDAEPPLGDLKNUPEXYCRQMLNTVMTDQIYTLYZGNVNORDDPGZJYALPTUTVCDLMSVVSARMDMYTPTFVZJNLBJNOYFTGIAQERRWQBTPNWFICROJNCQYDJHTOZQLYDHDNTZZXGUWOUKGSKSBFBTVFHGCQXNEGRICJXTWSYHMLIFXHPKWSIQKXKMDFZBVAUKUOJBVSFVQXATTVLRIDYKLRWASMOFSKLEKYKCSJYZOWXNFHRPXDYJINELNAVTRCXNGEAVPVBSHOODPSLADYLPYHPIIUJTEIVJEQCSCYTIHCMWLBZRQWMSJLPYPAGMBNIGKCQUQZIDPQGNPHGHYDXZEXRLIEBNKKPXANRKZEHWNXDQVREMFJFWYTRHDLGKJONRPSACNLFSAJUSQMWVKPGHBSQJZNPEURDEBZWAODMTEMLFGZFZTRLXXTGCKWZCZFGRSKQHQJVECNHUIJSCXNOVSBIGSLXTXBIKNRMIFHSYAUMETSOBRVVNMOVEHUDDIRUAIKVETTCDOVJXRYHFDAQIAKODLSSUKHRKVGOAPIJMALIEIICODZQNJSWHYHYZPWMQGOCSPSSEAARJWGNIGRDCDJRTYRIHVYSVSMQQADMBDMJLVKOEDPDVRKSEHPOXBKXELETFCQOGGYERRZSVCSLXFJBKJTTXOSMCBVWUAXDSDYLEIZWIAJFIXGMSRLOOOSTJNNSXCQUPNXWKJUJULDKYTVSKPYCKUHLHBKURUKWRYTYNAFAHPNXFZQYPNUEKCNMDXRIZTHFZWYBEBRNLWXHEIHUETXCVODZWNSDRJGYEPXZOCCAVKTNHOOOXVARRMJPEVLCQFFSNXYKCHQOSPEFDWHNJHYSLAZFQTTQJGGGGKOKMKRJANSIRZYDCJNAJQAOTNXUMUCTEHPANJAIQCNCSDWBJUBFUOAKDUDXDRTECSBLMPFATBMLKUMJHWUZXXZGBABOJPBAGYLJFEOEFWLUZEZHMPAOYDBDSZDZHEJBBUTRUJSNHTPKXDJOVJTUYNDYGNIFEAHGTGDFKDJJNWOUGOINVEVYSEQAOCAOVRJQVKPFYAQZSXCPUSVQKGZOQMWASQXHUOIMSYQYFWDRNQEXWBNVFFMDHVFDTLGIZTZRKSFXPZKPUXSYHUZJNFFLSSOMARTZXQWIRRSOOZCKWTQYWRJIMSAYTKZYDPLMHRLESJREGZHZEEHMFERPPRONWZOJRZQGLUGAQKJLZJOLUUQUFNHNLYFZACEUUQMJKZVBQAKNPJTDIXDWCYXBMLHQUXZORTUBLMWFDFOPOXCPWRMMGVLEEMHUBCPQXLGWGJPDLDYIWBMDNGTKPTBNSBDCPVJXFFZZYHMKSCQRPRXABMOZYCJZRQXYRSMMRXXPOGPVNIMHITFGUHAZRYJKRDJFOXRQZQMPQZUNDRBCGNLKDRCNINAJHHAEAFYERFVCQDQXLEMIKVVBTPGGAWZPEGXUMSBVPMOYJZYEZZICYUNYYZSMGQHLNOYACBELDAJFOCISTZAQTWAUKSMBWKIKOTVTDFLDSTRKKEOKFFBJZINVGPHRZJYXDJEIWKFSJLGXYYJEZHKYGPCCHDCSSBETHIKPFIOJXQCFKBDIZZGOEFTBSVRRVBJTPUYVCBCRCKKTWRIPQMIWMMYGARUAGXKSUHZLMFRMMSIIFLYEZHMOYPRGHEHKEVHIKQGQNBAHIOJJGRYFVKONMGGYXSTZUNEOINSDVWIKJBHFNVNOCISHRGRVPWUFTHLRDTSLGYHMEWMXTRNQHRPTAHHWKWSXUBIYTFFXZEFDYTNPHEQLODYJXUJXJFEOXTXUEBULAMCMBGYGDOIUBAHAHVOKKSEGIMYWBVDYWATSXFQTKQYZMEWFWEWCFVVZUSGTNWAQOUKWHKZNBWPAQGXIPBYBGJEMUAOJFNAKTJPLQATBELXZLSFAZROEDQUXBTYRBCVGPXFPMFDAVPUYHFKHSSOIECHBNTASPKZEODIPCLPRXSYUPLACJNFMREFPAKZNXVRGSBDMJZFSBJOMYJQXHPDJAUKOGPDHRNFHJCBJRPMOOLAXOLRHXAKFJSANZRGNXSYJHSHDOWSUZKANMRRHDAINXIHPDENKROYGWVDRJVBRSVJVJWAUJXGPJWVBPBIKTZPMMXREPKOLVCHABTVPINFFGVPDUODKHDOEJUTLZYPEXPZNNGKYNLJIAHGODHFKGNHAKTHBCHXWPCURHGBUQCWBRTISQKNVHPEMMMVSKOKXRDPMMLYDIGUXGFJXLZXNDCSUMHLHLHWCOOYZBPAIUKADKSIQNKTDGPNXYBQPGYWLDXDCEKWFCYCVQIJKPNZAEANTSEVHCPIBWCKAQMUZDMQRMZITMPHKUNDHXXUKFMBHIAUVUFIJGGPAYXJRPCOWLVMVSPZXWNDSSXOQKTCVJYAUEVBBMTHWYLSWDOJTEGABUGTOIQPUKMJMALBZXXIJLVNRVRCJZQLTKCVLULPSYFYJOIBYFANLCOXNLQYJOFQZDFRYIOEQMJGIRLFXTIVXPKQRZUQOSDTUGBTVQSXATNXMAYGNHSOWELEIATWUTKJUAPHFQUMXAYPJKNCXKDEVRTVNDVKHUQEIGIEMWBQANSYWFWZODJQTAQZKWYFSGFGEUESFSAWKELFZKHWBCFWMJSCIYKXSBXYMQEDTGDNAKKFYGZXOTLMHSHMCSHZJPSBZPWFLIJHFUEYOBJGGLXZPIIYPKBZMXFFOUANUWHGTIFKIZPEQPFUFETZYAHVXKSIFBSIHJXUJXYPKLIVXWNLNXDBIJXATRKCJPCEYICDDMVYIUIXGFXGTZZCYCFUUCMVQRKNUMCBVLKODKHXOWXPPGFNPMVBHDEGDFDFFRPKQJXDWUHUUJAIPZVYMADSLEAUSSPVFRVQZLABDREWXJMACDARFYLQGJPBOXNCDPNNJNVAJJMPQHOEYPZMRITBKCUXAKACMADODKWUGHGMZOXEKXKMZBZNQFFVMLKRNMQWLZRKWYIZVYHSACKIEUHSMIPVJZTZDYPAAMBVDGDMPHCBSXZIPDUQXRIRPRBFSZKSLTEXPYUBMKTJHUBEUVSMCPKOBUKXNDLIHXDCRJVBXQVUIDMMOTDXGJVBDRJTJRQXZBRTJDOQHEUJVLGBXPJXIUVLWGCEPCLDIMHIANMUJWJMUVTAIICIDUWMJZLAAQGELUOFRTMBPJUVEBRNLERKQEDAXVAUFSZFLZIZSAWPGQNBRDVUBAVSCKWPRFFMJNVMHRUKXLRXDXQAYBNNBJYBJWYJKZSUDXMENYZREUHQTGFPAFSSCHVPQGEMFEJTAAANSYLAJEMJXAICCUPSRDYAQPACORKDOZLFZTJVJZEEMUTDRDMAWSFQKFYNEAXLEFBFLVLRRURDPHRTYAPYMQSKFIQRQQIPHPYJNCTEPQFVXQMKARRMLFJUWVCXLGCLINCSCNUYMJMSSDPTXWNHJZYMARNWSMBESIXKFFOSAYVUNMJGUQTJLRFVMIJNCCDSGJEXYTKAXICMAIAXAPCYYDHCWBLMSBASJYZSATOOBFUIHAUBGZKDGHUNJJHNOKQSJWSLQJTDMQMPRKCOXZPQBKXSPCGDFOISXDPOHGNLZSIPZZVYOGXMKQHNWIAJNEXRZWEAANWFAJEWXYVWKICBTCWVLKMOWUPNHULNYXILIPHZQVNUYJEHLBGVFDMFNGHCQXATSAPBWZEQKKNSROWFWNYIGMDDRRBADJEZPJYGKONBWWFJVTGXWBNPRWZBKCRMSTTBIRUOILVDKALHNWBDYINQWFHOCFVFBIIUTSPOGRYRBNFFUTSOLFZPITVXCZFVRXDAXNWGQCKQSEVBHXVGTYZAVNZCEPTKIDZXHSFCZQLRUNXXZRAXQNRJOKRPRRUWBKKIQJELOGTNYIVISVVUHFJLSGBKFSOCAKZBHPXLHVSTESSQNISMGBRZFURQSPSHHMMVBAMQXNKMTIOAQDUTICTSZZVJIORVOXYCFAXJWXLLPCDMASYDIUGUJTEXRBHCPWVQVBVDEIWEBJTOTKMOHPOZJJWTOBOMRZKYACGTPMTRPCIHIZZOETYUAGVMMPYZHWTCQSXDDMYCOFUZMMLXYUPNNALAYKXEKBAKTBNZFHDKDPPUSAAHSEZKXUOVWLAUKGDQGSOJBBAYUFWTJHQUCKKQLRSAZQXDCLAJCGELGCJCKHPILUFUHNSZUBBZMXPPXVGKPZMLPREAJKYPLXMJIWDSDSLUUHUHWVWPLKNTOTAGYVFZPFRIETKHPNJFUHRTIWGINJTLTRVZJUOKGNFCEBACMJRLIFGLZERSJHFJKBJJVVXTANNRTWBWHJGPLYQIGIPJSDFVLEAURLKQGWJZATGJHJXLNVHAHUYBDLVLFDMJOLTBPVBLTVVGJLQPVMOCNUMTTADFFABWDGAVLBNBVUSVADDZRMVUMYXLNFLMHWXQUOIKXUNVGXXSJRFICDHGNNRPOADHIVQVSKNPJQGVDYLIBZFELOGFZNHSHPZKWOOBTLJOIWJKGMMDTHFJWCOPGUZTIJVPTECJXTIPMPSFYONVXXUYNBLODBWBKHEXRHUDJRENIPEEEGMWWHEQNQVLYRNFXKMYMDPMEHRKBBLRALSREVVDEIVBEOWIHRNGBFEALKHGCCLUPINRJJNJHRMLLPLFRCXVMLATRKZGKYSSZZTUUHYZJCYOGZMBGRCEEVCUCYNYZUGAXPCQIIUDPYGFAMFXATUYAXKZCTFCSXCOHVWEHHORWFWVURHHBZPZIQHXKLZFWFMSMBOAMEGBXMOHLWYRADETOJMMCDHXIQLWVVMUNEPGRVAUZKEVDONIAUZIXKVHWJMGICGXTYYHFXIWDYJEXTFTELDAQVPPCLXPFFRTKWZSLLGZHUFNWMSIJIEQEMJZUFYUNBJWTFEJMHUVQJESUMNLYKIMSTTUQKDFWTRBHVPCZWTTQQOHPSZXHPQWARAWPSMURVUOIRSCHKHQIFVKLQYLJFUVNZSKVLQSBBCXIGQPDQIHPADAHFFNYNLOUDHYXYKPXEMRYCDZOFQDARJJUXAFWLDVCCRWLECVCPAHEUQRTJLJMIJJMXHQLYTIVFMRTJDPNYNTJPPESLJWJFSVKANKFZXVRAATUYPHTATXIZFSKAQBQSFKMQINHUXDWAXOTKMQBWWIOKOTVGLZYFEOICWPBITPCWQBGTYYTMKWIRRILOQCGOPLSGVPSADTCGFYPENZUJRHJTKPBHGQJJDGQRZGXHAPFTIPZOWWIZJLMDGIMFFYGWNFZGBCMBHPXAVFCZFBZXIJKOPJRLSOKTDKBQSHXSGYPNUMVJFWZUJGFCYJFVPMUZUZPHMVWRGMBWBFTNFCMYGOANRPOOIPJPYHODMDDZTBJKQMNSLFBYPRYYEPAHAFFSRBAOYKNRDIVUNBKHHFFVQFAOTPPETBTCNJXGKQHBQYQBKBFXZDXBDMHJATIIYNEXADIDOJJHCHUFEQVKHSBEAREUBCQBSDXGPVQKKNKJWROBPDEECYIMBZGAIJSERINSYOHWHIEZUOYEDCPAUFNTYYSFOLDYHKNVOGHURZLVZEFCWFLPCZDTBEQYXXDNAJKMTNRGVJZRWVUMGXTVQKZAPKNOLUOAYEUSACDASMCRLFWIZAGTPEJMYLHDEZFCTAARZGYPEMLVOOIZDOTYTNEJEOIMWTIZXGCKOFTWKEMOJCNJDMFAQNYXHJBAVREKDSCMAXVYHOQNGRSRRKXYBMMAFGFLLPCKXUVDKSBJAQOXOGVGVYONMSUIRLOBIPXHXGKICITRONWQEGNCXFWFKMREYWZBXDCEXEXGTXGYFLOOCZKMLLQBVLQVCXOQAEVNLTGNXJGYUDEEPLQJFVTJIRGCYGEPODNJRRCHSMBRHDGJDHQYLHIEDAYBGAHOKKSBFUNZEOSLKPZNSDHLJPSJSBAIICYBADNLZGOCZVAKRKCTAVDQFKRSVIXYMKSGMQGKOCPVPXCQGMXCVOGEWCAIMZNGOIPPRMIAOMEWEIBJBJPTPOREQUNLMOIGOBTOWIEUAMDMEDFDWCAANRQUQGXMZUNJIZPLPUJTPOKECFGQNVSDHWUHJSQWMYFWFGVIFMIPIAYCUTVJVWHDCRAWSNRXPCTAJZQZIIZTAXCVPRWLQWNFBVBNGJBUXGGXLUVWGAVOFOQTCDICONHCWYGFXSDWEGSZCNVJLLXYSQVJWYUGZWRQXACFMLALSNNJGZFIBCAIORHUKYBJPCOQPKCPTOUKMOLMJCGQUJRVLTSUWJSUIILGLSGWLLQGKFJJEVVUZWLDGVLVXSZXMSKTRIJLOTONFARWKIDCQCPXXZLUOYPWOHNUSJMUTAXMFZTELHQBSXKHKPUIXTEMCMKJACOZLPLATYZXIZNMURXMVWNSPQFUCDVDRYEZMIEBZYOABCTTKLGBDSCVWWAQMUJYTXZFFFMHHKEOEORNSDGYIQPLSIEFOMXRQBGEYTCVIQARRCQUSTARLGZEVIQVQDRVMMCIWQEEBCIWKNNXCGBPAEELMPCDQFMKFKAXVAGSKDPRXSZTXXQQQTGPLFLAUBOFMUGDIOZCEVABXEKOHUOYRNBXDOHIIUDDHQHDIHVVBOITYCNFFNULBWGLNZDKHNVAXMGDGDLSQRATNBKTBIOCXBPFTQRDLQGNNWUZFOYRRYJAPMQCQBXUWUBDVLICZJXVPHOHDYQENOMJGIPAYTBDYPMNNLBXGCAOXUNMFFPEVPFKUPGERNNDOZLFVKFCIBCPBUIMHOMCVVDKBVQIOVZQKBPMXABGNJGEPIVFIEDXYFXIDODKJZCXKNHVFQHUSFMJWXFBGRPDIPSMBVEOLMZGWNQLQUQIXKSKOOXTSPFJEDBMAXHDPKEFAMASMLUJBNUKLEYIXPJEKYFTEKNFJRQDYGCHVTKCSEQTRUHPBZPWTEBGWEKXISBPUHEAFAEPLLVVUIFCLZRTUPMIAJVUVLTHOTFPMZZHEMOFWCBPBUVUIWAZOIHJBFZRDXJSACARXYBGNXKHMSKUAMKEALQWTWLMLZTQHGPNYUFKBLFBOZEWEVSSDOBPFAPYNNEXVPZOKKUGSQYFIAEQJTYNLYOBQUDLQKZFVXQAJCCBVJWMPUUARURYPUQDCQOTOPBTTLLOEDPRWEKPPLKUEMCPBGDGJQOBXCSEVPYXUVNDZKVIUZLGJXDHOYQYDDIKSDZSLTWRDKTQMDSOHUWKFJPTEQUAULYGUBLSJRAJNEHSPLGUOORIZOMBTMYJUWBNJYBHNCPDKSKVENEMEAAACQPFLCPZVNOZSASBVDMAKTXATLKVXJCMONWIOSQEVQGXFMHRMGOXBFSUVOJMSXDJBKSWJGWDFWSBQSNLCZYWNWZEIMWXBEMGSIMNAQHVFXLDNQNSWNEARIQXRHGYGNYINFFTEKMTCBOUWZAHYKFYFMNDURMGBHNCPDHUWKFJPUARURYPXYBGNXKHLQUQIXKSQHUSFMJWXGDGDLSQRAATYZXIZNMURKTRIJLOTONFOGEWCAIMZNGOIRLOBIPXHXGKICIPAUFNTYYSFOLDYHFSKAQBQSFKMQINHUXCCRWLECVCPAHEUQRTJLJKBJJVVXTANNRTWBWHJGPLYQQSEVBHXVGTYZAVNZCEPTKIDZXHWFHOCFVFBIIUTSPOGRYRBNFFUTQJTDMQMPRKCOXZPQBKXSPCGDFOIPRFFMJNVMHRUKXLRXDXQAYBNNBJYLGBXPJXIUVLWGCEPCLDIMHIANMUJWOQHEUJVLGBXPJXIUVLWGCEPCLDIMHIASZKSLTEXPYUBMKTJHUBEUVSMCPKOBUKXNDLIHXDFSZKSLTEXPYUBMKTJHUBEUVSMCPKOBUKXNDLIHXDCAYPJKNCXKDEVRTVNDVKHUQEIGIEMWBQANSYWFWZODIJLVNRVRCJZQLTKCVLULPSYFYJOIBYFANLCOXNLQYJOHBNTASPKZEODIPCLPRXSYUPLACJNFMREFPAKZNXVRGSBDMSDVWIKJBHFNVNOCISHRGRVPWUFTHLRDTSLGYHMEWMXTRNQHRNSDVWIKJBHFNVNOCISHRGRVPWUFTHLRDTSLGYHMEWMXTRNQHRNVGPHRZJYXDJEIWKFSJLGXYYJEZHKYGPCCHDCSSBETHIKPFIOPQXLGWGJPDLDYIWBMDNGTKPTBNSBDCPVJXFFZZYHMKSCQRPRXABMMPFATBMLKUMJHWUZXXZGBABOJPBAGYLJFEOEFWLUZEZHMPAOYDBDSJWGNIGRDCDJRTYRIHVYSVSMQQADMBDMJLVKOEDPDVRKSEHPOXBKXEIYTLYZGNVNORDDPGZJYALPTUTVCDLMSVVSARMDMYTPTFVZJNLBJNOYFTCJSGBWGSRBRMCBCOHBJXQBPLKRLJOVSGJXCOYHUOPSZZDBWEZINFVGWNUWARJKPAVYTCVEIDNFNGXWFSDWEZPLDNOAEALDXYJZZPRYKXQIGVNHLGRQBDYMYBGKQXPZVNBSYTQNUWARJKPAVYTCVEIDNFNGXWFSDWEZPLDNOAERXNEZMMIHRXUHIENABWZZTJMISHXCZNGBBJEVCQGFNODVDDYQGTPCCCNFTDRXNEZMMIHRXUHIENABWZZTJMISHXCZNGBBJEVCQGFNODVDDYQGTPCCCNFTUKFUPQTQHXOIGJUTFWHLRAIZQCEUZDGRJQQLVDAPSVUCADRSWYAZUYEMPIUIIWJMBGHVWSNLFCFSJMXICSZRPFUQMFFDXZEDMEQVJMBPZQNSBYIZUWUQCWPCRAUYVIWJMBGHVWSNLFCFSJMXICSZRPFUQMFFDXZEDMEQVJMBPZQNSBYIZUWUQCWPCRAURCHYAIFKTGNOQVJXHPBQRNLMUOGMWYUTUQQCELTWULVIWJMBGHVWSNLFCFSJMXICSZRPFUQMFFBWLPUDTGGVSYYOFAKQDJINWKBAYGBKDKRVTXMTVKEYMUFKYOSHAITIDRHTOKNOJQQGZFTLLVYUNPHOWVEMIAKBWFVESZNWPHSHGXQBTSAEGBRXMFBTTUAXCIBPISWQKSLZCPOLQKPSLVHENGNLDMNGYZKXPCTSUYFBSWNKJQTCWJKNRMLHUTFBRPHOWVEMIAKBWFVESZNWPHSHGXQBTSAEGBRXMFBTTUAXCIBPSNGYVBWHMCGADBALGZBKGTSOQGSOSGACPXNNGRXFAZPLMBNNAFOOPMGICEPPFMGBQYNVQHLXBGHODWPHTWAWXOCNFSOIIOFCFIEIDODTDJGFMCYBPZRBXMNSXAIVBQYOWOLUXSDXZGVJTRZIWZXQIOEBAWVPSAWPZNARJQLQYQPLTNOKEZYGASUNTPKYXOTUNZMAGBUDKXIIAVLKJJLAOVWHQFXYNUISYONOEKXPDDKUFRMDKHIHTAHPJOWMIHQYQPLTNOKEZYGASUNTPKYXOTUNZMAGBUDKXIIAVLKJJLAOVWHQFXYNUISYONOEKXPDDKUFRMDKHIHTAHPJOWMIBHQYQPLTNOKEZYGASUNTPKYXOTUNZMAGBUDKXIIAVLKJJLAOVWHQFXYNUISYONOEKXPDDKUFRMDKHIHTAHPJOWMISGBHQYQPLTNOKEZYGASUNTPKYXOTUNZMAGBUDKXIIAVLKJJLAOVWHQFXYNUISYONOEKXPDDKUFRMDKHIHTAHPJOWMISHGBHQYQPLTNOKEZYGASUNTPKYXOTUNZMAGBUDKXIIAVLKJJLAOVWHQFXYNUISYONOEKXPDDKUFRMDKHIHTAHPJOWMISGDHGBHQYQPLTNOKEZYGASUNTPKYXOTUNZMAGBUDKXIIAVLKJJLAOVWHQFXYNUISYONOEKXPDDKUFRMDKHIHTAHPJOWMISGBGVPFHATKCBVEZQNLIJUQUARLFCGVRXIXZSHHQHDHGBHQYQPLTNOKEZYGASUNTPKYXOTUNZMAGBUDKXIIAVLKJJLAOVWHQFXBFLTSFLYWJGVPFHATKCBVEZQNLIJUQUARLFCGVRXIXZSHHQHDHGBHQYQPLTNOKEZYGASUNTPKYXOTUNZMAGBUDKXIIAVLKJJLAVTNNGLUKHQWSMQWVIEGQMYRSBDOCQSUVWWDYBARBOAPQNRNEPGDASZWTHFPEJKXKRMIRDSLASFPLPJYEJYREHMZCBZDNKRJFWHJAEFAXXFZRFFYWLKBUSUPWYESFIOLVITJEWFFKLTQUJCPDOBPLKBGLRGESJKSYMDRODNIRJMLUWVGEBVFLKJAZMAVSVVVVTFJDARCGVTNNGUBJMGXTJLAXXFZRFFYWLKBUSUPWYESFIOLVITJEWFFKLTQUJCPDOBPLKBGLRGESJKSYMDRODNIRJMLUWVGEBVFLKJAZMAVSVVVVTFJDARCGVNPQVIKSKFASRJPAUFNWZTDIDBXTUSEJHYYRLPFVYLUEOWAWVTJYHXPPDEDUCUIEUROMPFXCAHYLAKPIXHJBINAMIYAFYZNJBWMTVEHDZCTQZBHGXSJNPQVIKSKFASRJPAUFNWZTDIDBXTUSEJHYYRLPFVYLUEOWAWVTJYHXPPDEDUCUIEUROMPFXCAHYLAKPIXHJBINAMIYAFYZNJBWMTVEHDZCUBHGXSJNPQVIKSKFASRJPAUFNWZTDIDBXTUSEJHYYRLPFVYLUEOWAWVTJYHXPPDEDUCUIEUROMPFXCAHYLAKPIXHJBINAMIYAFYZNJBWMTVEHDZCTMHUKJXTFLDSABAYZNGRLGAFGFUBHGXSJNPQVIKSKFASRJPAUFNWZTDIDBXTUSEJHYYRLPFVYLUEOWAWVTJYHXPPDEDUCUIEUROMPFXCAHYLAKPIXHJBICTZORWDALOJJNJZYJWUEPHZOVEGRAFHBCRETBBBAKQUTIJNDCIBGNTZOXPGLVBNWSWWMLGOVKOQUXFAXZAQMPPKDSLQBUATEXZRAOSDGOPNVFSPLSNKIWUOZAARAZQXSQSWQEMKBDZPJLRRQPBRKJUJEICHUZOQUOGYWGUATEKLZAZIAQVWNHYHMXVZDYACNLBIHHETCMNNTCTPRIFYKHNFHGVPFWRYFLKHFGPEDNZZNDYTHHHAZQUQPKQQEJZDJOAPXOSMCBQMLGPUSNTWZOLTGHCBHVFMHHWMOIEWINCVJUCWMGOAPWLNFNOCDJRHJIWCMXOWKPLCATJMBKONEUJXGRSKQWTQWDUMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLITMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHEYQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHEFYQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHERFYQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHECPGKZPRFYQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHECPGKZFPRFYQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHECPGKVFPRFYQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHECPGKVODWEVFPRFYQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHEQVODWEVFPRFYQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHECPGQVODWEVFPRFYQIRTMOYRDCMLVOGPGMYJERFQBGYNZTLAYSFNQSOQKSDHDUAYBIOGVLRNCYUFQOBUXGIZNKJQSMTUHMUOCOOASMHJXDSCYCBXUZGRTPKJJCSCCKEYKDOYORJMDOSNWTJVWUJKSYBQWLIMNVUIYDHHECPGCVVHYZCXFVDALNLZOARGOCWBFVUQKKSLEMJRKQIHULBCYTZQNRVSLSTQHZAZTZZRTBVXTTHBZJAXCGRVSCRJSEEOJQXFAEAJECDWVEHTBYEIQNMLILIEAAHWBXHQXEDOJKYNBBMTWQDMLFKRQRPACBSRLULLNLMKETFZJEBWTXZDHVDXJMMNIYAQYXEPJVDKPKQBSMWLATYCUWYSYOJZHUDSXTCSHTRACDQOQSNCYLMXJBYBBWKSNHYAYVRLCWFGAZSEVBIUJETIVGHEBDPXLVFWWTCKOUCOAOPMUIRPYZCULRWRCTZLCGMGREFOGJMULHHHQQIAOXVOKLCVAXDEGHSEUYZHPTFECVAJSFUSFMCGQLMASXUPQYQSNYRSDZVWZUXCDNVVPGAUQRGCQFSQSDEBWTXZDHVDXJMMNIYAQYXEPJVDKPKQBSMWLATYCUWYSYOJZHUDSXTCSHTRACDQOQSNCYLMXJBYBBWKSNHYAYVRLCWFGCQJCQLPHFANJTGZXOJRGGMYHXKQVCLBAAKUPWGUWGXEAHQBGJRKABJEUQUKOUABOVZDUKHRRXSBCRCHDFDUXCRZCYCHAZCEGPJFUATVHUHTAFLKSHRYVNYBVXUFUFYXIVGRBRUWPZZRGGNAURWMPKFLCJUGYBJHHTJHCNZQVDVLMJCQJCQLPHFANJTGZXOJRGGMYHXKQVCLBAAKUPWGUWGXEAHQBGJRKABJEUQUKOUABOVZDUKHRRXSBCRCHDFDUXCRZCYCHAZCEGPJFUATVHUHTAFLKSHRYVNYBVXUFUFYXIVGRBRUWPZZRGGNAURWMPKFLCJUGYBJHHTJHCNZQVDVLMENSPFDIYBMWOBOSWHFITNIUEVEGGXDZYRAIRWTHSECVCCZETCBXGFWSJPHFLCTUNESIKYZKJCTZFOMBMWYHTTXRZKSTVNHJCQJCQLPHFANJTGZXOJRGGMYHXKQVCLBAAKUPWGUWGXEAHQBGJRKABJEUQUKOUABOVZDUKHRRXSBCRCHDFDUXCRZCLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBRCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTTHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTXHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTAXHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTAAXHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQZAAXHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTTTZAAXHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTUTZAAXHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTOUTZAAXHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTTKOUTZAAXHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTTKLHVKOUTZAAXHUGBMWURCDKHFEEBLRVDUFOARAOFKXFESYNYRKSMLBUQYTCJSLHIHGMPTXAPLTINHRQXRLOSXQDEFLZEVHHSAGQBRNBPJEQVCKVOTUBGGOIRCWEEYQGCIPXJDFRZUPUTVXGMPSCOVBPUFYVPTEYXTRUHXARDSYTZTGDIHALCQZAIWRPDAYGNZDKMTIFEJHQTEMIYVARZJRWUDDXKMGUUQBWHZNWCJFCQTTKLHFYRPHKDPWHACQGQFLCDTXXZKYDGDDPOBSWEMPAAVFCEXQJDCBOZIRSOWELVYEKWNGRMNGMOPFVVLVIOYDJJMWJGMZCMNGRPMLMNJLPZKFRVYSTRPQOPBKREYFDCIQJLQANHNOIUMHAJAEHAVGSMDSJRNGVPTRTFHWNXPZDOOLHYYMGALWNVZYKHPGFEZNGDGFUIEUNYQKEAICMFOYYLDRJQXCKQUILBITRHCUSQMCNSDDCLMYRQWFYRPHKDPWHACQGQFLCDTXXZKYDGDDPOBSWEMPAAVFCEXQJDCBOZIRSOWELVYEKWNGRMNGMOPFVVLVIOYDJJMWJGMZCMNGRPMLMNJLPZKFRVYSTRPQOPBKREYFDCIQJLQANHNOIUMHAJAEHAVGSMDSJRNGVPTRTFHWNXPZDOOLHYYMGALWNVZYKHPGFEZNGDGFUIEUNYQKEAICMFOYYLDRJQXCKQUILBITRHCUSQMCNSDDCLMYRQXWFYRPHKDPWHACQGQFLCDTXXZKYDGDDPOBSWEMPAAVFCEXQJDCBOZIRSOWELVYEKWNGRMNGMOPFVVLVIOYDJJMWJGMZCMNGRPMLMNJLPZKFRVYSTRPQOPBKREYFDCIQJLQANHNOIUMHAJAEHAVGSMDSJRNGVPTRTFHWNXPZDOOLHYYMGALWNVZYKHPGFEZNGDGFUIEUNYQKEAICMFOYYLDRJQXCKQUILBITRHCUSQMCNSDDCLMYRNXWFYRPHKDPWHACQGQFLCDTXXZKYDGDDPOBSWEMPAAVFCEXQJDCBOZIRSOWELVYEKWNGRMNGMOPFVVLVIOYDJJMWJGMZCMNGRPMLMNJLPZKFRVYSTRPQOPBKREYFDCIQJLQANHNOIUMHAJAEHAVGSMDSJRNGVPTRTFHWNXPZDOOLHYYMGALWNVZYKHPGFEZNGDGFUIEUNYQKEAICMFOYYLDRJQXCKQUILBITRHCUSQMCNSDDCLMYRKNXWFYRPHKDPWHACQGQFLCDTXXZKYDGDDPOBSWEMPAAVFCEXQJDCBOZIRSOWELVYEKWNGRMNGMOPFVVLVIOYDJJMWJGMZCMNGRPMLMNJLPZKFRVYSTRPQOPBKREYFDCIQJLQANHNOIUMHAJAEHAVGSMDSJRNGVPTRTFHWNXPZDOOLHYYMGALWNVZYKHPGFEZNGDGFUIEUNYQKEAICMFOYYLDRJQXCKQUILBITRHCUSQMCNSDDCLMYRQUKNXWFYRPHKDPWHACQGQFLCDTXXZKYDGDDPOBSWEMPAAVFCEXQJDCBOZIRSOWELVYEKWNGRMNGMOPFVVLVIOYDJJMWJGMZCMNGRPMLMNJLPZKFRVYSTRPQOPBKREYFDCIQJLQANHNOIUMHAJAEHAVGSMDSJRNGVPTRTFHWNXPZDOOLHYYMGALWNVZYKHPGFEZNGDGFUIEUNYQKEAICMFOYYLDRJQXCKQUILBITRHCUSQMCNSDDCLMYRQIAUKNXWFYRPHKDPWHACQGQFLCDTXXZKYDGDDPOBSWEMPAAVFCEXQJDCBOZIRSOWELVYEKWNGRMNGMOPFVVLVIOYDJJMWJGMZCMNGRPMLMNJLPZKFRVYSTRPQOPBKREYFDCIQJLQANHNOIUMHAJAEHAVGSMDSJRNGVPTRTFHWNXPZDOOLHYYMGALWNVZYKHPGFEZNGDGFUIEUNYQKEAICMFOYYLDRJQXCKQUILBITRHCUSQMCNSDDCLMYRQIADAUKNXWFYRPHKDPWHACQGQFLCDTXXZKYDGDDPOBSWEMPAAVFCEXQJDCBOZIRSOWELVYEKWNGRMNGMOPFVVLVIOYDJJMWJGMZCMNGRPMLMNJLPZKFRVYSTRPQOPBKREYFDCIQJLQANHNOIUMHAJAEHAVGSMDSJRNGVPTRTFHWNXPZDOOLHYYMGALWNVZYKHPGFEZNGDGFUIEUNYQKEAICMFOYYLDRJQXCKQUILBITRHCUSQMCNSDDCLMYRQIIDAUKNXWFYRPHKDPWHACQGQFLCDTXXZKYDGDDPOBSWEMPAAVFCEXQJDCBOZIRSOWELVYEKWNGRMNGMOPFVVLVIOYDJJMWJGMZCMNGRPMLMNJLPZKFRVYSTRPQOPBKREYFDCIQJLQANHNOIUMHAJAEHAVGSMDSJRNGVPTRTFHWNXPZDOOLHYYMGALWNVZYKHPGFEZNGDGFUIEUNYQKEAICMFOYYLDRJQXCKQUILBITRHCUSQMCNSDDCLMYRQIAOM
diff --git a/neozip/test/CVE-2018-25032/fixed.txt b/neozip/test/CVE-2018-25032/fixed.txt
new file mode 100644
index 0000000000..5ccca248c5
--- /dev/null
+++ b/neozip/test/CVE-2018-25032/fixed.txt
@@ -0,0 +1 @@
+AAABAACAADAAEAAFAAGAAHAAIAAJAAKAALAAMAANAAOAAPAAQAARAASAATAAUAAVAAWAAXAAYAAZABBABCABDABEABFABGABHABIABJABKABLABMABNABOABPABQABRABSABTABUABVABWABXABYABZACBACCACDACEACFACGACHACIACJACKACLACMACNACOACPACQACRACSACTACUACVACWACXACYACZADBADCADDADEADFADGADHADIADJADKADLADMADNADOADPADQADRADSADTADUADVADWADXADYADZAEBAECAEDAEEAEFAEGAEHAEIAEJAEKAELAEMAENAEOAEPAEQAERAESAETAEUAEVAEWAEXAEYAEZAFBAFCAFDAFEAFFAFGAFHAFIAFJAFKAFLAFMAFNAFOAFPAFQAFRAFSAFTAFUAFVAFWAFXAFYAFZAGBAGCAGDAGEAGFAGGAGHAGIAGJAGKAGLAGMAGNAGOAGPAGQAGRAGSAGTAGUAGVAGWAGXAGYAGZAHBAHCAHDAHEAHFAHGAHHAHIAHJAHKAHLAHMAHNAHOAHPAHQAHRAHSAHTAHUAHVAHWAHXAHYAHZAIBAICAIDAIEAIFAIGAIHAIIAIJAIKAILAIMAINAIOAIPAIQAIRAISAITAIUAIVAIWAIXAIYAIZAJBAJCAJDAJEAJFAJGAJHAJIAJJAJKAJLAJMAJNAJOAJPAJQAJRAJSAJTAJUAJVAJWAJXAJYAJZAKBAKCAKDAKEAKFAKGAKHAKIAKJAKKAKLAKMAKNAKOAKPAKQAKRAKSAKTAKUAKVAKWAKXAKYAKZALBALCALDALEALFALGALHALIALJALKALLALMALNALOALPALQALRALSALTALUALVALWALXALYALZAMBAMCAMDAMEAMFAMGAMHAMIAMJAMKAMLAMMAMNAMOAMPAMQAMRAMSAMTAMUAMVAMWAMXAMYAMZANBANCANDANEANFANGANHANIANJANKANLANMANNANOANPANQANRANSANTANUANVANWANXANYANZAOBAOCAODAOEAOFAOGAOHAOIAOJAOKAOLAOMAONAOOAOPAOQAORAOSAOTAOUAOVAOWAOXAOYAOZAPBAPCAPDAPEAPFAPGAPHAPIAPJAPKAPLAPMAPNAPOAPPAPQAPRAPSAPTAPUAPVAPWAPXAPYAPZAQBAQCAQDAQEAQFAQGAQHAQIAQJAQKAQLAQMAQNAQOAQPAQQAQRAQSAQTAQUAQVAQWAQXAQYAQZARBARCARDAREARFARGARHARIARJARKARLARMARNAROARPARQARRARSARTARUARVARWARXARYARZASBASCASDASEASFASGASHASIASJASKASLASMASNASOASPASQASRASSASTASUASVASWASXASYASZATBATCATDATEATFATGATHATIATJATKATLATMATNATOATPATQATRATSATTATUATVATWATXATYATZAUBAUCAUDAUEAUFAUGAUHAUIAUJAUKAULAUMAUNAUOAUPAUQAURAUSAUTAUUAUVAUWAUXAUYAUZAVBAVCAVDAVEAVFAVGAVHAVIAVJAVKAVLAVMAVNAVOAVPAVQAVRAVSAVTAVUAVVAVWAVXAVYAVZAWBAWCAWDAWEAWFAWGAWHAWIAWJAWKAWLAWMAWNAWOAWPAWQAWRAWSAWTAWUAWVAWWAWXAWYAWZAXBAXCAXDAXEAXFAXGAXHAXIAXJAXKAXLAXMAXNAXOAXPAXQAXRAXSAXTAXUAXVAXWAXXAXYAXZAYBAYCAYDAYEAYFAYGAYHAYIAYJAYKAYLAYMAYNAYOAYPAYQAYRAYSAYTAYUAYVAYWAYXAYYAYZAZBAZCAZDAZEAZFAZGAZHAZIAZJAZKAZLAZMAZNAZOAZPAZQAZRAZSAZTAZUAZVAZWAZXAZYAZZBBBCBBDBBEBBFBBGBBHBBIBBJBBKBBLBBMBBNBBOBBPBBQBBRBBSBBTBBUBBVBBWBBXBBYBBZBCCBCDBCEBCFBCGBCHBCIBCJBCKBCLBCMBCNBCOBCPBCQBCRBCSBCTBCUBCVBCWBCXBCYBCZBDCBDDBDEBDFBDGBDHBDIBDJBDKBDLBDMBDNBDOBDPBDQBDRBDSBDTBDUBDVBDWBDXBDYBDZBECBEDBEEBEFBEGBEHBEIBEJBEKBELBEMBENBEOBEPBEQBERBESBETBEUBEVBEWBEXBEYBEZBFCBFDBFEBFFBFGBFHBFIBFJBFKBFLBFMBFNBFOBFPBFQBFRBFSBFTBFUBFVBFWBFXBFYBFZBGCBGDBGEBGFBGGBGHBGIBGJBGKBGLBGMBGNBGOBGPBGQBGRBGSBGTBGUBGVBGWBGXBGYBGZBHCBHDBHEBHFBHGBHHBHIBHJBHKBHLBHMBHNBHOBHPBHQBHRBHSBHTBHUBHVBHWBHXBHYBHZBICBIDBIEBIFBIGBIHBIIBIJBIKBILBIMBINBIOBIPBIQBIRBISBITBIUBIVBIWBIXBIYBIZBJCBJDBJEBJFBJGBJHBJIBJJBJKBJLBJMBJNBJOBJPBJQBJRBJSBJTBJUBJVBJWBJXBJYBJZBKCBKDBKEBKFBKGBKHBKIBKJBKKBKLBKMBKNBKOBKPBKQBKRBKSBKTBKUBKVBKWBKXBKYBKZBLCBLDBLEBLFBLGBLHBLIBLJBLKBLLBLMBLNBLOBLPBLQBLRBLSBLTBLUBLVBLWBLXBLYBLZBMCBMDBMEBMFBMGBMHBMIBMJBMKBMLBMMBMNBMOBMPBMQBMRBMSBMTBMUBMVBMWBMXBMYBMZBNCBNDBNEBNFBNGBNHBNIBNJBNKBNLBNMBNNBNOBNPBNQBNRBNSBNTBNUBNVBNWBNXBNYBNZBOCBODBOEBOFBOGBOHBOIBOJBOKBOLBOMBONBOOBOPBOQBORBOSBOTBOUBOVBOWBOXBOYBOZBPCBPDBPEBPFBPGBPHBPIBPJBPKBPLBPMBPNBPOBPPBPQBPRBPSBPTBPUBPVBPWBPXBPYBPZBQCBQDBQEBQFBQGBQHBQIBQJBQKBQLBQMBQNBQOBQPBQQBQRBQSBQTBQUBQVBQWBQXBQYBQZBRCBRDBREBRFBRGBRHBRIBRJBRKBRLBRMBRNBROBRPBRQBRRBRSBRTBRUBRVBRWBRXBRYBRZBSCBSDBSEBSFBSGBSHBSIBSJBSKBSLBSMBSNBSOBSPBSQBSRBSSBSTBSUBSVBSWBSXBSYBSZBTCBTDBTEBTFBTGBTHBTIBTJBTKBTLBTMBTNBTOBTPBTQBTRBTSBTTBTUBTVBTWBTXBTYBTZBUCBUDBUEBUFBUGBUHBUIBUJBUKBULBUMBUNBUOBUPBUQBURBUSBUTBUUBUVBUWBUXBUYBUZBVCBVDBVEBVFBVGBVHBVIBVJBVKBVLBVMBVNBVOBVPBVQBVRBVSBVTBVUBVVBVWBVXBVYBVZBWCBWDBWEBWFBWGBWHBWIBWJBWKBWLBWMBWNBWOBWPBWQBWRBWSBWTBWUBWVBWWBWXBWYBWZBXCBXDBXEBXFBXGBXHBXIBXJBXKBXLBXMBXNBXOBXPBXQBXRBXSBXTBXUBXVBXWBXXBXYBXZBYCBYDBYEBYFBYGBYHBYIBYJBYKBYLBYMBYNBYOBYPBYQBYRBYSBYTBYUBYVBYWBYXBYYBYZBZCBZDBZEBZFBZGBZHBZIBZJBZKBZLBZMBZNBZOBZPBZQBZRBZSBZTBZUBZVBZWBZXBZYBZZCCCDCCECCFCCGCCHCCICCJCCKCCLCCMCCNCCOCCPCCQCCRCCSCCTCCUCCVCCWCCXCCYCCZCDDCDECDFCDGCDHCDICDJCDKCDLCDMCDNCDOCDPCDQCDRCDSCDTCDUCDVCDWCDXCDYCDZCEDCEECEFCEGCEHCEICEJCEKCELCEMCENCEOCEPCEQCERCESCETCEUCEVCEWCEXCEYCEZCFDCFECFFCFGCFHCFICFJCFKCFLCFMCFNCFOCFPCFQCFRCFSCFTCFUCFVCFWCFXCFYCFZCGDCGECGFCGGCGHCGICGJCGKCGLCGMCGNCGOCGPCGQCGRCGSCGTCGUCGVCGWCGXCGYCGZCHDCHECHFCHGCHHCHICHJCHKCHLCHMCHNCHOCHPCHQCHRCHSCHTCHUCHVCHWCHXCHYCHZCIDCIECIFCIGCIHCIICIJCIKCILCIMCINCIOCIPCIQCIRCISCITCIUCIVCIWCIXCIYCIZCJDCJECJFCJGCJHCJICJJCJKCJLCJMCJNCJOCJPCJQCJRCJSCJTCJUCJVCJWCJXCJYCJZCKDCKECKFCKGCKHCKICKJCKKCKLCKMCKNCKOCKPCKQCKRCKSCKTCKUCKVCKWCKXCKYCKZCLDCLECLFCLGCLHCLICLJCLKCLLCLMCLNCLOCLPCLQCLRCLSCLTCLUCLVCLWCLXCLYCLZCMDCMECMFCMGCMHCMICMJCMKCMLCMMCMNCMOCMPCMQCMRCMSCMTCMUCMVCMWCMXCMYCMZCNDCNECNFCNGCNHCNICNJCNKCNLCNMCNNCNOCNPCNQCNRCNSCNTCNUCNVCNWCNXCNYCNZCODCOECOFCOGCOHCOICOJCOKCOLCOMCONCOOCOPCOQCORCOSCOTCOUCOVCOWCOXCOYCOZCPDCPECPFCPGCPHCPICPJCPKCPLCPMCPNCPOCPPCPQCPRCPSCPTCPUCPVCPWCPXCPYCPZCQDCQECQFCQGCQHCQICQJCQKCQLCQMCQNCQOCQPCQQCQRCQSCQTCQUCQVCQWCQXCQYCQZCRDCRECRFCRGCRHCRICRJCRKCRLCRMCRNCROCRPCRQCRRCRSCRTCRUCRVCRWCRXCRYCRZCSDCSECSFCSGCSHCSICSJCSKCSLCSMCSNCSOCSPCSQCSRCSSCSTCSUCSVCSWCSXCSYCSZCTDCTECTFCTGCTHCTICTJCTKCTLCTMCTNCTOCTPCTQCTRCTSCTTCTUCTVCTWCTXCTYCTZCUDCUECUFCUGCUHCUICUJCUKCULCUMCUNCUOCUPCUQCURCUSCUTCUUCUVCUWCUXCUYCUZCVDCVECVFCVGCVHCVICVJCVKCVLCVMCVNCVOCVPCVQCVRCVSCVTCVUCVVCVWCVXCVYCVZCWDCWECWFCWGCWHCWICWJCWKCWLCWMCWNCWOCWPCWQCWRCWSCWTCWUCWVCWWCWXCWYCWZCXDCXECXFCXGCXHCXICXJCXKCXLCXMCXNCXOCXPCXQCXRCXSCXTCXUCXVCXWCXXCXYCXZCYDCYECYFCYGCYHCYICYJCYKCYLCYMCYNCYOCYPCYQCYRCYSCYTCYUCYVCYWCYXCYYCYZCZDCZECZFCZGCZHCZICZJCZKCZLCZMCZNCZOCZPCZQCZRCZSCZTCZUCZVCZWCZXCZYCZZDDDEDDFDDGDDHDDIDDJDDKDDLDDMDDNDDODDPDDQDDRDDSDDTDDUDDVDDWDDXDDYDDZDEEDEFDEGDEHDEIDEJDEKDELDEMDENDEODEPDEQDERDESDETDEUDEVDEWDEXDEYDEZDFEDFFDFGDFHDFIDFJDFKDFLDFMDFNDFODFPDFQDFRDFSDFTDFUDFVDFWDFXDFYDFZDGEDGFDGGDGHDGIDGJDGKDGLDGMDGNDGODGPDGQDGRDGSDGTDGUDGVDGWDGXDGYDGZDHEDHFDHGDHHDHIDHJDHKDHLDHMDHNDHODHPDHQDHRDHSDHTDHUDHVDHWDHXDHYDHZDIEDIFDIGDIHDIIDIJDIKDILDIMDINDIODIPDIQDIRDISDITDIUDIVDIWDIXDIYDIZDJEDJFDJGDJHDJIDJJDJKDJLDJMDJNDJODJPDJQDJRDJSDJTDJUDJVDJWDJXDJYDJZDKEDKFDKGDKHDKIDKJDKKDKLDKMDKNDKODKPDKQDKRDKSDKTDKUDKVDKWDKXDKYDKZDLEDLFDLGDLHDLIDLJDLKDLLDLMDLNDLODLPDLQDLRDLSDLTDLUDLVDLWDLXDLYDLZDMEDMFDMGDMHDMIDMJDMKDMLDMMDMNDMODMPDMQDMRDMSDMTDMUDMVDMWDMXDMYDMZDNEDNFDNGDNHDNIDNJDNKDNLDNMDNNDNODNPDNQDNRDNSDNTDNUDNVDNWDNXDNYDNZDOEDOFDOGDOHDOIDOJDOKDOLDOMDONDOODOPDOQDORDOSDOTDOUDOVDOWDOXDOYDOZDPEDPFDPGDPHDPIDPJDPKDPLDPMDPNDPODPPDPQDPRDPSDPTDPUDPVDPWDPXDPYDPZDQEDQFDQGDQHDQIDQJDQKDQLDQMDQNDQODQPDQQDQRDQSDQTDQUDQVDQWDQXDQYDQZDREDRFDRGDRHDRIDRJDRKDRLDRMDRNDRODRPDRQDRRDRSDRTDRUDRVDRWDRXDRYDRZDSEDSFDSGDSHDSIDSJDSKDSLDSMDSNDSODSPDSQDSRDSSDSTDSUDSVDSWDSXDSYDSZDTEDTFDTGDTHDTIDTJDTKDTLDTMDTNDTODTPDTQDTRDTSDTTDTUDTVDTWDTXDTYDTZDUEDUFDUGDUHDUIDUJDUKDULDUMDUNDUODUPDUQDURDUSDUTDUUDUVDUWDUXDUYDUZDVEDVFDVGDVHDVIDVJDVKDVLDVMDVNDVODVPDVQDVRDVSDVTDVUDVVDVWDVXDVYDVZDWEDWFDWGDWHDWIDWJDWKDWLDWMDWNDWODWPDWQDWRDWSDWTDWUDWVDWWDWXDWYDWZDXEDXFDXGDXHDXIDXJDXKDXLDXMDXNDXODXPDXQDXRDXSDXTDXUDXVDXWDXXDXYDXZDYEDYFDYGDYHDYIDYJDYKDYLDYMDYNDYODYPDYQDYRDYSDYTDYUDYVDYWDYXDYYDYZDZEDZFDZGDZHDZIDZJDZKDZLDZMDZNDZODZPDZQDZRDZSDZTDZUDZVDZWDZXDZYDZZEEEFEEGEEHEEIEEJEEKEELEEMEENEEOEEPEEQEEREESEETEEUEEVEEWEEXEEYEEZEFFEFGEFHEFIEFJEFKEFLEFMEFNEFOEFPEFQEFREFSEFTEFUEFVEFWEFXEFYEFZEGFEGGEGHEGIEGJEGKEGLEGMEGNEGOEGPEGQEGREGSEGTEGUEGVEGWEGXEGYEGZEHFEHGEHHEHIEHJEHKEHLEHMEHNEHOEHPEHQEHREHSEHTEHUEHVEHWEHXEHYEHZEIFEIGEIHEIIEIJEIKEILEIMEINEIOEIPEIQEIREISEITEIUEIVEIWEIXEIYEIZEJFEJGEJHEJIEJJEJKEJLEJMEJNEJOEJPEJQEJREJSEJTEJUEJVEJWEJXEJYEJZEKFEKGEKHEKIEKJEKKEKLEKMEKNEKOEKPEKQEKREKSEKTEKUEKVEKWEKXEKYEKZELFELGELHELIELJELKELLELMELNELOELPELQELRELSELTELUELVELWELXELYELZEMFEMGEMHEMIEMJEMKEMLEMMEMNEMOEMPEMQEMREMSEMTEMUEMVEMWEMXEMYEMZENFENGENHENIENJENKENLENMENNENOENPENQENRENSENTENUENVENWENXENYENZEOFEOGEOHEOIEOJEOKEOLEOMEONEOOEOPEOQEOREOSEOTEOUEOVEOWEOXEOYEOZEPFEPGEPHEPIEPJEPKEPLEPMEPNEPOEPPEPQEPREPSEPTEPUEPVEPWEPXEPYEPZEQFEQGEQHEQIEQJEQKEQLEQMEQNEQOEQPEQQEQREQSEQTEQUEQVEQWEQXEQYEQZERFERGERHERIERJERKERLERMERNEROERPERQERRERSERTERUERVERWERXERYERZESFESGESHESIESJESKESLESMESNESOESPESQESRESSESTESUESVESWESXESYESZETFETGETHETIETJETKETLETMETNETOETPETQETRETSETTETUETVETWETXETYETZEUFEUGEUHEUIEUJEUKEULEUMEUNEUOEUPEUQEUREUSEUTEUUEUVEUWEUXEUYEUZEVFEVGEVHEVIEVJEVKEVLEVMEVNEVOEVPEVQEVREVSEVTEVUEVVEVWEVXEVYEVZEWFEWGEWHEWIEWJEWKEWLEWMEWNEWOEWPEWQEWREWSEWTEWUEWVEWWEWXEWYEWZEXFEXGEXHEXIEXJEXKEXLEXMEXNEXOEXPEXQEXREXSEXTEXUEXVEXWEXXEXYEXZEYFEYGEYHEYIEYJEYKEYLEYMEYNEYOEYPEYQEYREYSEYTEYUEYVEYWEYXEYYEYZEZFEZGEZHEZIEZJEZKEZLEZMEZNEZOEZPEZQEZREZSEZTEZUEZVEZWEZXEZYEZZFFFGFFHFFIFFJFFKFFLFFMFFNFFOFFPFFQFFRFFSFFTFFUFFVFFWFFXFFYFFZFGGFGHFGIFGJFGKFGLFGMFGNFGOFGPFGQFGRFGSFGTFGUFGVFGWFGXFGYFGZFHGFHHFHIFHJFHKFHLFHMFHNFHOFHPFHQFHRFHSFHTFHUFHVFHWFHXFHYFHZFIGFIHFIIFIJFIKFILFIMFINFIOFIPFIQFIRFISFITFIUFIVFIWFIXFIYFIZFJGFJHFJIFJJFJKFJLFJMFJNFJOFJPFJQFJRFJSFJTFJUFJVFJWFJXFJYFJZFKGFKHFKIFKJFKKFKLFKMFKNFKOFKPFKQFKRFKSFKTFKUFKVFKWFKXFKYFKZFLGFLHFLIFLJFLKFLLFLMFLNFLOFLPFLQFLRFLSFLTFLUFLVFLWFLXFLYFLZFMGFMHFMIFMJFMKFMLFMMFMNFMOFMPFMQFMRFMSFMTFMUFMVFMWFMXFMYFMZFNGFNHFNIFNJFNKFNLFNMFNNFNOFNPFNQFNRFNSFNTFNUFNVFNWFNXFNYFNZFOGFOHFOIFOJFOKFOLFOMFONFOOFOPFOQFORFOSFOTFOUFOVFOWFOXFOYFOZFPGFPHFPIFPJFPKFPLFPMFPNFPOFPPFPQFPRFPSFPTFPUFPVFPWFPXFPYFPZFQGFQHFQIFQJFQKFQLFQMFQNFQOFQPFQQFQRFQSFQTFQUFQVFQWFQXFQYFQZFRGFRHFRIFRJFRKFRLFRMFRNFROFRPFRQFRRFRSFRTFRUFRVFRWFRXFRYFRZFSGFSHFSIFSJFSKFSLFSMFSNFSOFSPFSQFSRFSSFSTFSUFSVFSWFSXFSYFSZFTGFTHFTIFTJFTKFTLFTMFTNFTOFTPFTQFTRFTSFTTFTUFTVFTWFTXFTYFTZFUGFUHFUIFUJFUKFULFUMFUNFUOFUPFUQFURFUSFUTFUUFUVFUWFUXFUYFUZFVGFVHFVIFVJFVKFVLFVMFVNFVOFVPFVQFVRFVSFVTFVUFVVFVWFVXFVYFVZFWGFWHFWIFWJFWKFWLFWMFWNFWOFWPFWQFWRFWSFWTFWUFWVFWWFWXFWYFWZFXGFXHFXIFXJFXKFXLFXMFXNFXOFXPFXQFXRFXSFXTFXUFXVFXWFXXFXYFXZFYGFYHFYIFYJFYKFYLFYMFYNFYOFYPFYQFYRFYSFYTFYUFYVFYWFYXFYYFYZFZGFZHFZIFZJFZKFZLFZMFZNFZOFZPFZQFZRFZSFZTFZUFZVFZWFZXFZYFZZGGGHGGIGGJGGKGGLGGMGGNGGOGGPGGQGGRGGSGGTGGUGGVGGWGGXGGYGGZGHHGHIGHJGHKGHLGHMGHNGHOGHPGHQGHRGHSGHTGHUGHVGHWGHXGHYGHZGIHGIIGIJGIKGILGIMGINGIOGIPGIQGIRGISGITGIUGIVGIWGIXGIYGIZGJHGJIGJJGJKGJLGJMGJNGJOGJPGJQGJRGJSGJTGJUGJVGJWGJXGJYGJZGKHGKIGKJGKKGKLGKMGKNGKOGKPGKQGKRGKSGKTGKUGKVGKWGKXGKYGKZGLHGLIGLJGLKGLLGLMGLNGLOGLPGLQGLRGLSGLTGLUGLVGLWGLXGLYGLZGMHGMIGMJGMKGMLGMMGMNGMOGMPGMQGMRGMSGMTGMUGMVGMWGMXGMYGMZGNHGNIGNJGNKGNLGNMGNNGNOGNPGNQGNRGNSGNTGNUGNVGNWGNXGNYGNZGOHGOIGOJGOKGOLGOMGONGOOGOPGOQGORGOSGOTGOUGOVGOWGOXGOYGOZGPHGPIGPJGPKGPLGPMGPNGPOGPPGPQGPRGPSGPTGPUGPVGPWGPXGPYGPZGQHGQIGQJGQKGQLGQMGQNGQOGQPGQQGQRGQSGQTGQUGQVGQWGQXGQYGQZGRHGRIGRJGRKGRLGRMGRNGROGRPGRQGRRGRSGRTGRUGRVGRWGRXGRYGRZGSHGSIGSJGSKGSLGSMGSNGSOGSPGSQGSRGSSGSTGSUGSVGSWGSXGSYGSZGTHGTIGTJGTKGTLGTMGTNGTOGTPGTQGTRGTSGTTGTUGTVGTWGTXGTYGTZGUHGUIGUJGUKGULGUMGUNGUOGUPGUQGURGUSGUTGUUGUVGUWGUXGUYGUZGVHGVIGVJGVKGVLGVMGVNGVOGVPGVQGVRGVSGVTGVUGVVGVWGVXGVYGVZGWHGWIGWJGWKGWLGWMGWNGWOGWPGWQGWRGWSGWTGWUGWVGWWGWXGWYGWZGXHGXIGXJGXKGXLGXMGXNGXOGXPGXQGXRGXSGXTGXUGXVGXWGXXGXYGXZGYHGYIGYJGYKGYLGYMGYNGYOGYPGYQGYRGYSGYTGYUGYVGYWGYXGYYGYZGZHGZIGZJGZKGZLGZMGZNGZOGZPGZQGZRGZSGZTGZUGZVGZWGZXGZYGZZHHHIHHJHHKHHLHHMHHNHHOHHPHHQHHRHHSHHTHHUHHVHHWHHXHHYHHZHIIHIJHIKHILHIMHINHIOHIPHIQHIRHISHITHIUHIVHIWHIXHIYHIZHJIHJJHJKHJLHJMHJNHJOHJPHJQHJRHJSHJTHJUHJVHJWHJXHJYHJZHKIHKJHKKHKLHKMHKNHKOHKPHKQHKRHKSHKTHKUHKVHKWHKXHKYHKZHLIHLJHLKHLLHLMHLNHLOHLPHLQHLRHLSHLTHLUHLVHLWHLXHLYHLZHMIHMJHMKHMLHMMHMNHMOHMPHMQHMRHMSHMTHMUHMVHMWHMXHMYHMZHNIHNJHNKHNLHNMHNNHNOHNPHNQHNRHNSHNTHNUHNVHNWHNXHNYHNZHOIHOJHOKHOLHOMHONHOOHOPHOQHORHOSHOTHOUHOVHOWHOXHOYHOZHPIHPJHPKHPLHPMHPNHPOHPPHPQHPRHPSHPTHPUHPVHPWHPXHPYHPZHQIHQJHQKHQLHQMHQNHQOHQPHQQHQRHQSHQTHQUHQVHQWHQXHQYHQZHRIHRJHRKHRLHRMHRNHROHRPHRQHRRHRSHRTHRUHRVHRWHRXHRYHRZHSIHSJHSKHSLHSMHSNHSOHSPHSQHSRHSSHSTHSUHSVHSWHSXHSYHSZHTIHTJHTKHTLHTMHTNHTOHTPHTQHTRHTSHTTHTUHTVHTWHTXHTYHTZHUIHUJHUKHULHUMHUNHUOHUPHUQHURHUSHUTHUUHUVHUWHUXHUYHUZHVIHVJHVKHVLHVMHVNHVOHVPHVQHVRHVSHVTHVUHVVHVWHVXHVYHVZHWIHWJHWKHWLHWMHWNHWOHWPHWQHWRHWSHWTHWUHWVHWWHWXHWYHWZHXIHXJHXKHXLHXMHXNHXOHXPHXQHXRHXSHXTHXUHXVHXWHXXHXYHXZHYIHYJHYKHYLHYMHYNHYOHYPHYQHYRHYSHYTHYUHYVHYWHYXHYYHYZHZIHZJHZKHZLHZMHZNHZOHZPHZQHZRHZSHZTHZUHZVHZWHZXHZYHZZIIIJIIKIILIIMIINIIOIIPIIQIIRIISIITIIUIIVIIWIIXIIYIIZIJJIJKIJLIJMIJNIJOIJPIJQIJRIJSIJTIJUIJVIJWIJXIJYIJZIKJIKKIKLIKMIKNIKOIKPIKQIKRIKSIKTIKUIKVIKWIKXIKYIKZILJILKILLILMILNILOILPILQILRILSILTILUILVILWILXILYILZIMJIMKIMLIMMIMNIMOIMPIMQIMRIMSIMTIMUIMVIMWIMXIMYIMZINJINKINLINMINNINOINPINQINRINSINTINUINVINWINXINYINZIOJIOKIOLIOMIONIOOIOPIOQIORIOSIOTIOUIOVIOWIOXIOYIOZIPJIPKIPLIPMIPNIPOIPPIPQIPRIPSIPTIPUIPVIPWIPXIPYIPZIQJIQKIQLIQMIQNIQOIQPIQQIQRIQSIQTIQUIQVIQWIQXIQYIQZIRJIRKIRLIRMIRNIROIRPIRQIRRIRSIRTIRUIRVIRWIRXIRYIRZISJISKISLISMISNISOISPISQISRISSISTISUISVISWISXISYISZITJITKITLITMITNITOITPITQITRITSITTITUITVITWITXITYITZIUJIUKIULIUMIUNIUOIUPIUQIURIUSIUTIUUIUVIUWIUXIUYIUZIVJIVKIVLIVMIVNIVOIVPIVQIVRIVSIVTIVUIVVIVWIVXIVYIVZIWJIWKIWLIWMIWNIWOIWPIWQIWRIWSIWTIWUIWVIWWIWXIWYIWZIXJIXKIXLIXMIXNIXOIXPIXQIXRIXSIXTIXUIXVIXWIXXIXYIXZIYJIYKIYLIYMIYNIYOIYPIYQIYRIYSIYTIYUIYVIYWIYXIYYIYZIZJIZKIZLIZMIZNIZOIZPIZQIZRIZSIZTIZUIZVIZWIZXIZYIZZJJJKJJLJJMJJNJJOJJPJJQJJRJJSJJTJJUJJVJJWJJXJJYJJZJKKJKLJKMJKNJKOJKPJKQJKRJKSJKTJKUJKVJKWJKXJKYJKZJLKJLLJLMJLNJLOJLPJLQJLRJLSJLTJLUJLVJLWJLXJLYJLZJMKJMLJMMJMNJMOJMPJMQJMRJMSJMTJMUJMVJMWJMXJMYJMZJNKJNLJNMJNNJNOJNPJNQJNRJNSJNTJNUJNVJNWJNXJNYJNZJOKJOLJOMJONJOOJOPJOQJORJOSJOTJOUJOVJOWJOXJOYJOZJPKJPLJPMJPNJPOJPPJPQJPRJPSJPTJPUJPVJPWJPXJPYJPZJQKJQLJQMJQNJQOJQPJQQJQRJQSJQTJQUJQVJQWJQXJQYJQZJRKJRLJRMJRNJROJRPJRQJRRJRSJRTJRUJRVJRWJRXJRYJRZJSKJSLJSMJSNJSOJSPJSQJSRJSSJSTJSUJSVJSWJSXJSYJSZJTKJTLJTMJTNJTOJTPJTQJTRJTSJTTJTUJTVJTWJTXJTYJTZJUKJULJUMJUNJUOJUPJUQJURJUSJUTJUUJUVJUWJUXJUYJUZJVKJVLJVMJVNJVOJVPJVQJVRJVSJVTJVUJVVJVWJVXJVYJVZJWKJWLJWMJWNJWOJWPJWQJWRJWSJWTJWUJWVJWWJWXJWYJWZJXKJXLJXMJXNJXOJXPJXQJXRJXSJXTJXUJXVJXWJXXJXYJXZJYKJYLJYMJYNJYOJYPJYQJYRJYSJYTJYUJYVJYWJYXJYYJYZJZKJZLJZMJZNJZOJZPJZQJZRJZSJZTJZUJZVJZWJZXJZYJZZKKKLKKMKKNKKOKKPKKQKKRKKSKKTKKUKKVKKWKKXKKYKKZKLLKLMKLNKLOKLPKLQKLRKLSKLTKLUKLVKLWKLXKLYKLZKMLKMMKMNKMOKMPKMQKMRKMSKMTKMUKMVKMWKMXKMYKMZKNLKNMKNNKNOKNPKNQKNRKNSKNTKNUKNVKNWKNXKNYKNZKOLKOMKONKOOKOPKOQKORKOSKOTKOUKOVKOWKOXKOYKOZKPLKPMKPNKPOKPPKPQKPRKPSKPTKPUKPVKPWKPXKPYKPZKQLKQMKQNKQOKQPKQQKQRKQSKQTKQUKQVKQWKQXKQYKQZKRLKRMKRNKROKRPKRQKRRKRSKRTKRUKRVKRWKRXKRYKRZKSLKSMKSNKSOKSPKSQKSRKSSKSTKSUKSVKSWKSXKSYKSZKTLKTMKTNKTOKTPKTQKTRKTSKTTKTUKTVKTWKTXKTYKTZKULKUMKUNKUOKUPKUQKURKUSKUTKUUKUVKUWKUXKUYKUZKVLKVMKVNKVOKVPKVQKVRKVSKVTKVUKVVKVWKVXKVYKVZKWLKWMKWNKWOKWPKWQKWRKWSKWTKWUKWVKWWKWXKWYKWZKXLKXMKXNKXOKXPKXQKXRKXSKXTKXUKXVKXWKXXKXYKXZKYLKYMKYNKYOKYPKYQKYRKYSKYTKYUKYVKYWKYXKYYKYZKZLKZMKZNKZOKZPKZQKZRKZSKZTKZUKZVKZWKZXKZYKZZLLLMLLNLLOLLPLLQLLRLLSLLTLLULLVLLWLLXLLYLLZLMMLMNLMOLMPLMQLMRLMSLMTLMULMVLMWLMXLMYLMZLNMLNNLNOLNPLNQLNRLNSLNTLNULNVLNWLNXLNYLNZLOMLONLOOLOPLOQLORLOSLOTLOULOVLOWLOXLOYLOZLPMLPNLPOLPPLPQLPRLPSLPTLPULPVLPWLPXLPYLPZLQMLQNLQOLQPLQQLQRLQSLQTLQULQVLQWLQXLQYLQZLRMLRNLROLRPLRQLRRLRSLRTLRULRVLRWLRXLRYLRZLSMLSNLSOLSPLSQLSRLSSLSTLSULSVLSWLSXLSYLSZLTMLTNLTOLTPLTQLTRLTSLTTLTULTVLTWLTXLTYLTZLUMLUNLUOLUPLUQLURLUSLUTLUULUVLUWLUXLUYLUZLVMLVNLVOLVPLVQLVRLVSLVTLVULVVLVWLVXLVYLVZLWMLWNLWOLWPLWQLWRLWSLWTLWULWVLWWLWXLWYLWZLXMLXNLXOLXPLXQLXRLXSLXTLXULXVLXWLXXLXYLXZLYMLYNLYOLYPLYQLYRLYSLYTLYULYVLYWLYXLYYLYZLZMLZNLZOLZPLZQLZRLZSLZTLZULZVLZWLZXLZYLZZMMMNMMOMMPMMQMMRMMSMMTMMUMMVMMWMMXMMYMMZMNNMNOMNPMNQMNRMNSMNTMNUMNVMNWMNXMNYMNZMONMOOMOPMOQMORMOSMOTMOUMOVMOWMOXMOYMOZMPNMPOMPPMPQMPRMPSMPTMPUMPVMPWMPXMPYMPZMQNMQOMQPMQQMQRMQSMQTMQUMQVMQWMQXMQYMQZMRNMROMRPMRQMRRMRSMRTMRUMRVMRWMRXMRYMRZMSNMSOMSPMSQMSRMSSMSTMSUMSVMSWMSXMSYMSZMTNMTOMTPMTQMTRMTSMTTMTUMTVMTWMTXMTYMTZMUNMUOMUPMUQMURMUSMUTMUUMUVMUWMUXMUYMUZMVNMVOMVPMVQMVRMVSMVTMVUMVVMVWMVXMVYMVZMWNMWOMWPMWQMWRMWSMWTMWUMWVMWWMWXMWYMWZMXNMXOMXPMXQMXRMXSMXTMXUMXVMXWMXXMXYMXZMYNMYOMYPMYQMYRMYSMYTMYUMYVMYWMYXMYYMYZMZNMZOMZPMZQMZRMZSMZTMZUMZVMZWMZXMZYMZZNNNONNPNNQNNRNNSNNTNNUNNVNNWNNXNNYNNZNOONOPNOQNORNOSNOTNOUNOVNOWNOXNOYNOZNPONPPNPQNPRNPSNPTNPUNPVNPWNPXNPYNPZNQONQPNQQNQRNQSNQTNQUNQVNQWNQXNQYNQZNRONRPNRQNRRNRSNRTNRUNRVNRWNRXNRYNRZNSONSPNSQNSRNSSNSTNSUNSVNSWNSXNSYNSZNTONTPNTQNTRNTSNTTNTUNTVNTWNTXNTYNTZNUONUPNUQNURNUSNUTNUUNUVNUWNUXNUYNUZNVONVPNVQNVRNVSNVTNVUNVVNVWNVXNVYNVZNWONWPNWQNWRNWSNWTNWUNWVNWWNWXNWYNWZNXONXPNXQNXRNXSNXTNXUNXVNXWNXXNXYNXZNYONYPNYQNYRNYSNYTNYUNYVNYWNYXNYYNYZNZONZPNZQNZRNZSNZTNZUNZVNZWNZXNZYNZZOOOPOOQOOROOSOOTOOUOOVOOWOOXOOYOOZOPPOPQOPROPSOPTOPUOPVOPWOPXOPYOPZOQPOQQOQROQSOQTOQUOQVOQWOQXOQYOQZORPORQORRORSORTORUORVORWORXORYORZOSPOSQOSROSSOSTOSUOSVOSWOSXOSYOSZOTPOTQOTROTSOTTOTUOTVOTWOTXOTYOTZOUPOUQOUROUSOUTOUUOUVOUWOUXOUYOUZOVPOVQOVROVSOVTOVUOVVOVWOVXOVYOVZOWPOWQOWROWSOWTOWUOWVOWWOWXOWYOWZOXPOXQOXROXSOXTOXUOXVOXWOXXOXYOXZOYPOYQOYROYSOYTOYUOYVOYWOYXOYYOYZOZPOZQOZROZSOZTOZUOZVOZWOZXOZYOZZPPPQPPRPPSPPTPPUPPVPPWPPXPPYPPZPQQPQRPQSPQTPQUPQVPQWPQXPQYPQZPRQPRRPRSPRTPRUPRVPRWPRXPRYPRZPSQPSRPSSPSTPSUPSVPSWPSXPSYPSZPTQPTRPTSPTTPTUPTVTABUABVABWABXABYABZACBACCACDACEACFACGACHACIACJACKACLACMACNACOACPACQACRACSACTACUACVACWACXACYACZADBADCADDADEADFADGADHADIADJADKADLADMADAAABAACAADAAEAAFAAGAAHAAIAAJAAKAALAAMAANAAOAAPAAQAARAASAATAAUAAVAAWAAXAAYAAZABBABCABDABEABFABGABHABIABJABKABLABMABNABOABPABQABRABSABHAFIAFJAFKAFLAFMAFNAFOAFPAFQAFRAFSAFTAFUAFVAFWAFXAFYAFZAGBAGCAGDAGEAGFAGGAGHAGIAGJAGKAGLAGMAGNAGOAGPAGQAGRAGSAGTAGUAGVAGWAGXAGYAGZAHNADOADPADQADRADSADTADUADVADWADXADYADZAEBAECAEDAEEAEFAEGAEHAEIAEJAEKAELAEMAENAEOAEPAEQAERAESAETAEUAEVAEWAEXAEYAEZAFBAFCAFDAFEAFFAFGAFUAIVAIWAIXAIYAIZAJBAJCAJDAJEAJFAJGAJHAJIAJJAJKAJLAJMAJNAJOAJPAJQAJRAJSAJTAJUAJVAJWAJXAJYAJZAKBAKCAKDAKEAKFAKGAKHAKIAKJAKKAKLAKMAKNAKBAHCAHDAHEAHFAHGAHHAHIAHJAHKAHLAHMAHNAHOAHPAHQAHRAHSAHTAHUAHVAHWAHXAHYAHZAIBAICAIDAIEAIFAIGAIHAIIAIJAIKAILAIMAINAIOAIPAIQAIRAISAITAIIAMJAMKAMLAMMAMNAMOAMPAMQAMRAMSAMTAMUAMVAMWAMXAMYAMZANBANCANDANEANFANGANHANIANJANKANLANMANNANOANPANQANRANSANTANUANVANWANXANYANZAOBAOOAKPAKQAKRAKSAKTAKUAKVAKWAKXAKYAKZALBALCALDALEALFALGALHALIALJALKALLALMALNALOALPALQALRALSALTALUALVALWALXALYALZAMBAMCAMDAMEAMFAMGAMHAMVAPWAPXAPYAPZAQBAQCAQDAQEAQFAQGAQHAQIAQJAQKAQLAQMAQNAQOAQPAQQAQRAQSAQTAQUAQVAQWAQXAQYAQZARBARCARDAREARFARGARHARIARJARKARLARMARNAROARCAODAOEAOFAOGAOHAOIAOJAOKAOLAOMAONAOOAOPAOQAORAOSAOTAOUAOVAOWAOXAOYAOZAPBAPCAPDAPEAPFAPGAPHAPIAPJAPKAPLAPMAPNAPOAPPAPQAPRAPSAPTAPUAPJATKATLATMATNATOATPATQATRATSATTATUATVATWATXATYATZAUBAUCAUDAUEAUFAUGAUHAUIAUJAUKAULAUMAUNAUOAUPAUQAURAUSAUTAUUAUVAUWAUXAUYAUZAVBAVCAVPARQARRARSARTARUARVARWARXARYARZASBASCASDASEASFASGASHASIASJASKASLASMASNASOASPASQASRASSASTASUASVASWASXASYASZATBATCATDATEATFATGATHATIATWAWXAWYAWZAXBAXCAXDAXEAXFAXGAXHAXIAXJAXKAXLAXMAXNAXOAXPAXQAXRAXSAXTAXUAXVAXWAXXAXYAXZAYBAYCAYDAYEAYFAYGAYHAYIAYJAYKAYLAYMAYNAYOAYPAYDAVEAVFAVGAVHAVIAVJAVKAVLAVMAVNAVOAVPAVQAVRAVSAVTAVUAVVAVWAVXAVYAVZAWBAWCAWDAWEAWFAWGAWHAWIAWJAWKAWLAWMAWNAWOAWPAWQAWRAWSAWTAWUAWVAWBLBBMBBNBBOBBPBBQBBRBBSBBTBBUBBVBBWBBXBBYBBZBCCBCDBCEBCFBCGBCHBCIBCJBCKBCLBCMBCNBCOBCPBCQBCRBCSBCTBCUBCVBCWBCXBCYBCZBDCBDDBDEBDFBDGBQAYRAYSAYTAYUAYVAYWAYXAYYAYZAZBAZCAZDAZEAZFAZGAZHAZIAZJAZKAZLAZMAZNAZOAZPAZQAZRAZSAZTAZUAZVAZWAZXAZYAZZBBBCBBDBBEBBFBBGBBHBBIBBJBBKBFDBFEBFFBFGBFHBFIBFJBFKBFLBFMBFNBFOBFPBFQBFRBFSBFTBFUBFVBFWBFXBFYBFZBGCBGDBGEBGFBGGBGHBGIBGJBGKBGLBGMBGNBGOBGPBGQBGRBGSBGTBGUBGVBGWBDHBDIBDJBDKBDLBDMBDNBDOBDPBDQBDRBDSBDTBDUBDVBDWBDXBDYBDZBECBEDBEEBEFBEGBEHBEIBEJBEKBELBEMBENBEOBEPBEQBERBESBETBEUBEVBEWBEXBEYBEZBFCBITBIUBIVBIWBIXBIYBIZBJCBJDBJEBJFBJGBJHBJIBJJBJKBJLBJMBJNBJOBJPBJQBJRBJSBJTBJUBJVBJWBJXBJYBJZBKCBKDBKEBKFBKGBKHBKIBKJBKKBKLBKMBKNBKOBGXBGYBGZBHCBHDBHEBHFBHGBHHBHIBHJBHKBHLBHMBHNBHOBHPBHQBHRBHSBHTBHUBHVBHWBHXBHYBHZBICBIDBIEBIFBIGBIHBIIBIJBIKBILBIMBINBIOBIPBIQBIRBISBMLBMMBMNBMOBMPBMQBMRBMSBMTBMUBMVBMWBMXBMYBMZBNCBNDBNEBNFBNGBNHBNIBNJBNKBNLBNMBNNBNOBNPBNQBNRBNSBNTBNUBNVBNWBNXBNYBNZBOCBODBOEBOFBOGBKPBKQBKRBKSBKTBKUBKVBKWBKXBKYBKZBLCBLDBLEBLFBLGBLHBLIBLJBLKBLLBLMBLNBLOBLPBLQBLRBLSBLTBLUBLVBLWBLXBLYBLZBMCBMDBMEBMFBMGBMHBMIBMJBMKBQDBQEBQFBQGBQHBQIBQJBQKBQLBQMBQNBQOBQPBQQBQRBQSBQTBQUBQVBQWBQXBQYBQZBRCBRDBREBRFBRGBRHBRIBRJBRKBRLBRMBRNBROBRPBRQBRRBRSBRTBRUBRVBRWBOHBOIBOJBOKBOLBOMBONBOOBOPBOQBORBOSBOTBOUBOVBOWBOXBOYBOZBPCBPDBPEBPFBPGBPHBPIBPJBPKBPLBPMBPNBPOBPPBPQBPRBPSBPTBPUBPVBPWBPXBPYBPZBQCBTTBTUBTVBTWBTXBTYBTZBUCBUDBUEBUFBUGBUHBUIBUJBUKBULBUMBUNBUOBUPBUQBURBUSBUTBUUBUVBUWBUXBUYBUZBVCBVDBVEBVFBVGBVHBVIBVJBVKBVLBVMBVNBVOBRXBRYBRZBSCBSDBSEBSFBSGBSHBSIBSJBSKBSLBSMBSNBSOBSPBSQBSRBSSBSTBSUBSVBSWBSXBSYBSZBTCBTDBTEBTFBTGBTHBTIBTJBTKBTLBTMBTNBTOBTPBTQBTRBTSBXLBXMBXNBXOBXPBXQBXRBXSBXTBXUBXVBXWBXXBXYBXZBYCBYDBYEBYFBYGBYHBYIBYJBYKBYLBYMBYNBYOBYPBYQBYRBYSBYTBYUBYVBYWBYXBYYBYZBZCBZDBZEBZFBZGBVPBVQBVRBVSBVTBVUBVVBVWBVXBVYBVZBWCBWDBWEBWFBWGBWHBWIBWJBWKBWLBWMBWNBWOBWPBWQBWRBWSBWTBWUBWVBWWBWXBWYBWZBXCBXDBXEBXFBXGBXHBXIBXJBXKBCDFCDGCDHCDICDJCDKCDLCDMCDNCDOCDPCDQCDRCDSCDTCDUCDVCDWCDXCDYCDZCEDCEECEFCEGCEHCEICEJCEKCELCEMCENCEOCEPCEQCERCESCETCEUCEVCEWCEXCEYCEZZHBZIBZJBZKBZLBZMBZNBZOBZPBZQBZRBZSBZTBZUBZVBZWBZXBZYBZZCCCDCCECCFCCGCCHCCICCJCCKCCLCCMCCNCCOCCPCCQCCRCCSCCTCCUCCVCCWCCXCCYCCZCDDCDECGYCGZCHDCHECHFCHGCHHCHICHJCHKCHLCHMCHNCHOCHPCHQCHRCHSCHTCHUCHVCHWCHXCHYCHZCIDCIECIFCIGCIHCIICIJCIKCILCIMCINCIOCIPCIQCIRCISCITCIUCIVCFDCFECFFCFGCFHCFICFJCFKCFLCFMCFNCFOCFPCFQCFRCFSCFTCFUCFVCFWCFXCFYCFZCGDCGECGFCGGCGHCGICGJCGKCGLCGMCGNCGOCGPCGQCGRCGSCGTCGUCGVCGWCGXCKUCKVCKWCKXCKYCKZCLDCLECLFCLGCLHCLICLJCLKCLLCLMCLNCLOCLPCLQCLRCLSCLTCLUCLVCLWCLXCLYCLZCMDCMECMFCMGCMHCMICMJCMKCMLCMMCMNCMOCMPCMQCMRCIWCIXCIYCIZCJDCJECJFCJGCJHCJICJJCJKCJLCJMCJNCJOCJPCJQCJRCJSCJTCJUCJVCJWCJXCJYCJZCKDCKECKFCKGCKHCKICKJCKKCKLCKMCKNCKOCKPCKQCKRCKSCKTCOQCORCOSCOTCOUCOVCOWCOXCOYCOZCPDCPECPFCPGCPHCPICPJCPKCPLCPMCPNCPOCPPCPQCPRCPSCPTCPUCPVCPWCPXCPYCPZCQDCQECQFCQGCQHCQICQJCQKCQLCQMCQNCMSCMTCMUCMVCMWCMXCMYCMZCNDCNECNFCNGCNHCNICNJCNKCNLCNMCNNCNOCNPCNQCNRCNSCNTCNUCNVCNWCNXCNYCNZCODCOECOFCOGCOHCOICOJCOKCOLCOMCONCOOCOPCSMCSNCSOCSPCSQCSRCSSCSTCSUCSVCSWCSXCSYCSZCTDCTECTFCTGCTHCTICTJCTKCTLCTMCTNCTOCTPCTQCTRCTSCTTCTUCTVCTWCTXCTYCTZCUDCUECUFCUGCUHCUICUJCQOCQPCQQCQRCQSCQTCQUCQVCQWCQXCQYCQZCRDCRECRFCRGCRHCRICRJCRKCRLCRMCRNCROCRPCRQCRRCRSCRTCRUCRVCRWCRXCRYCRZCSDCSECSFCSGCSHCSICSJCSKCSLCWICWJCWKCWLCWMCWNCWOCWPCWQCWRCWSCWTCWUCWVCWWCWXCWYCWZCXDCXECXFCXGCXHCXICXJCXKCXLCXMCXNCXOCXPCXQCXRCXSCXTCXUCXVCXWCXXCXYCXZCYDCYECYFCUKCULCUMCUNCUOCUPCUQCURCUSCUTCUUCUVCUWCUXCUYCUZCVDCVECVFCVGCVHCVICVJCVKCVLCVMCVNCVOCVPCVQCVRCVSCVTCVUCVVCVWCVXCVYCVZCWDCWECWFCWGCWHEDDFDDGDDHDDIDDJDDKDDLDDMDDNDDODDPDDQDDRDDSDDTDDUDDVDDWDDXDDYDDZDEEDEFDEGDEHDEIDEJDEKDELDEMDENDEODEPDEQDERDESDETDEUDEVDEWDEXDEYDEZDFCYGCYHCYICYJCYKCYLCYMCYNCYOCYPCYQCYRCYSCYTCYUCYVCYWCYXCYYCYZCZDCZECZFCZGCZHCZICZJCZKCZLCZMCZNCZOCZPCZQCZRCZSCZTCZUCZVCZWCZXCZYCZZDDDEDHFDHGDHHDHIDHJDHKDHLDHMDHNDHODHPDHQDHRDHSDHTDHUDHVDHWDHXDHYDHZDIEDIFDIGDIHDIIDIJDIKDILDIMDINDIODIPDIQDIRDISDITDIUDIVDIWDIXDIYDIZDJEDFFDFGDFHDFIDFJDFKDFLDFMDFNDFODFPDFQDFRDFSDFTDFUDFVDFWDFXDFYDFZDGEDGFDGGDGHDGIDGJDGKDGLDGMDGNDGODGPDGQDGRDGSDGTDGUDGVDGWDGXDGYDGZDHEDLFDLGDLHDLIDLJDLKDLLDLMDLNDLODLPDLQDLRDLSDLTDLUDLVDLWDLXDLYDLZDMEDMFDMGDMHDMIDMJDMKDMLDMMDMNDMODMPDMQDMRDMSDMTDMUDMVDMWDMXDMYDMZDNEDJFDJGDJHDJIDJJDJKDJLDJMDJNDJODJPDJQDJRDJSDJTDJUDJVDJWDJXDJYDJZDKEDKFDKGDKHDKIDKJDKKDKLDKMDKNDKODKPDKQDKRDKSDKTDKUDKVDKWDKXDKYDKZDLEDPFDPGDPHDPIDPJDPKDPLDPMDPNDPODPPDPQDPRDPSDPTDPUDPVDPWDPXDPYDPZDQEDQFDQGDQHDQIDQJDQKDQLDQMDQNDQODQPDQQDQRDQSDQTDQUDQVDQWDQXDQYDQZDREDNFDNGDNHDNIDNJDNKDNLDNMDNNDNODNPDNQDNRDNSDNTDNUDNVDNWDNXDNYDNZDOEDOFDOGDOHDOIDOJDOKDOLDOMDONDOODOPDOQDORDOSDOTDOUDOVDOWDOXDOYDOZDPEDTFDTGDTHDTIDTJDTKDTLDTMDTNDTODTPDTQDTRDTSDTTDTUDTVDTWDTXDTYDTZDUEDUFDUGDUHDUIDUJDUKDULDUMDUNDUODUPDUQDURDUSDUTDUUDUVDUWDUXDUYDUZDVEDRFDRGDRHDRIDRJDRKDRLDRMDRNDRODRPDRQDRRDRSDRTDRUDRVDRWDRXDRYDRZDSEDSFDSGDSHDSIDSJDSKDSLDSMDSNDSODSPDSQDSRDSSDSTDSUDSVDSWDSXDSYDSZDTEDXFDXGDXHDXIDXJDXKDXLDXMDXNDXODXPDXQDXRDXSDXTDXUDXVDXWDXXDXYDXZDYEDYFDYGDYHDYIDYJDYKDYLDYMDYNDYODYPDYQDYRDYSDYTDYUDYVDYWDYXDYYDYZDZEDVFDVGDVHDVIDVJDVKDVLDVMDVNDVODVPDVQDVRDVSDVTDVUDVVDVWDVXDVYDVZDWEDWFDWGDWHDWIDWJDWKDWLDWMDWNDWODWPDWQDWRDWSDWTDWUDWVDWWDWXDWYDWZDXFGEFHEFIEFJEFKEFLEFMEFNEFOEFPEFQEFREFSEFTEFUEFVEFWEFXEFYEFZEGFEGGEGHEGIEGJEGKEGLEGMEGNEGOEGPEGQEGREGSEGTEGUEGVEGWEGXEGYEGZEHFEHGEHHEEDZFDZGDZHDZIDZJDZKDZLDZMDZNDZODZPDZQDZRDZSDZTDZUDZVDZWDZXDZYDZZEEEFEEGEEHEEIEEJEEKEELEEMEENEEOEEPEEQEEREESEETEEUEEVEEWEEXEEYEEZEFFEJKEJLEJMEJNEJOEJPEJQEJREJSEJTEJUEJVEJWEJXEJYEJZEKFEKGEKHEKIEKJEKKEKLEKMEKNEKOEKPEKQEKREKSEKTEKUEKVEKWEKXEKYEKZELFELGELHELIELJELKELLEHIEHJEHKEHLEHMEHNEHOEHPEHQEHREHSEHTEHUEHVEHWEHXEHYEHZEIFEIGEIHEIIEIJEIKEILEIMEINEIOEIPEIQEIREISEITEIUEIVEIWEIXEIYEIZEJFEJGEJHEJIEJJENOENPENQENRENSENTENUENVENWENXENYENZEOFEOGEOHEOIEOJEOKEOLEOMEONEOOEOPEOQEOREOSEOTEOUEOVEOWEOXEOYEOZEPFEPGEPHEPIEPJEPKEPLEPMEPNEPOEPPELMELNELOELPELQELRELSELTELUELVELWELXELYELZEMFEMGEMHEMIEMJEMKEMLEMMEMNEMOEMPEMQEMREMSEMTEMUEMVEMWEMXEMYEMZENFENGENHENIENJENKENLENMENNERSERTERUERVERWERXERYERZESFESGESHESIESJESKESLESMESNESOESPESQESRESSESTESUESVESWESXESYESZETFETGETHETIETJETKETLETMETNETOETPETQETRETSETTEPQEPREPSEPTEPUEPVEPWEPXEPYEPZEQFEQGEQHEQIEQJEQKEQLEQMEQNEQOEQPEQQEQREQSEQTEQUEQVEQWEQXEQYEQZERFERGERHERIERJERKERLERMERNEROERPERQERREVWEVXEVYEVZEWFEWGEWHEWIEWJEWKEWLEWMEWNEWOEWPEWQEWREWSEWTEWUEWVEWWEWXEWYEWZEXFEXGEXHEXIEXJEXKEXLEXMEXNEXOEXPEXQEXREXSEXTEXUEXVEXWEXXETUETVETWETXETYETZEUFEUGEUHEUIEUJEUKEULEUMEUNEUOEUPEUQEUREUSEUTEUUEUVEUWEUXEUYEUZEVFEVGEVHEVIEVJEVKEVLEVMEVNEVOEVPEVQEVREVSEVTEVUEVVEFFGFFHFFIFFJFFKFFLFFMFFNFFOFFPFFQFFRFFSFFTFFUFFVFFWFFXFFYFFZFGGFGHFGIFGJFGKFGLFGMFGNFGOFGPFGQFGRFGSFGTFGUFGVFGWFGXFGYFGZFHGFHHFHIFHJXYEXZEYFEYGEYHEYIEYJEYKEYLEYMEYNEYOEYPEYQEYREYSEYTEYUEYVEYWEYXEYYEYZEZFEZGEZHEZIEZJEZKEZLEZMEZNEZOEZPEZQEZREZSEZTEZUEZVEZWEZXEZYEZZFFJOFJPFJQFJRFJSFJTFJUFJVFJWFJXFJYFJZFKGFKHFKIFKJFKKFKLFKMFKNFKOFKPFKQFKRFKSFKTFKUFKVFKWFKXFKYFKZFLGFLHFLIFLJFLKFLLFLMFLNFLOFLPFLQFLRFHKFHLFHMFHNFHOFHPFHQFHRFHSFHTFHUFHVFHWFHXFHYFHZFIGFIHFIIFIJFIKFILFIMFINFIOFIPFIQFIRFISFITFIUFIVFIWFIXFIYFIZFJGFJHFJIFJJFJKFJLFJMFJNFNWFNXFNYFNZFOGFOHFOIFOJFOKFOLFOMFONFOOFOPFOQFORFOSFOTFOUFOVFOWFOXFOYFOZFPGFPHFPIFPJFPKFPLFPMFPNFPOFPPFPQFPRFPSFPTFPUFPVFPWFPXFPYFPZFLSFLTFLUFLVFLWFLXFLYFLZFMGFMHFMIFMJFMKFMLFMMFMNFMOFMPFMQFMRFMSFMTFMUFMVFMWFMXFMYFMZFNGFNHFNIFNJFNKFNLFNMFNNFNOFNPFNQFNRFNSFNTFNUFNVFSKFSLFSMFSNFSOFSPFSQFSRFSSFSTFSUFSVFSWFSXFSYFSZFTGFTHFTIFTJFTKFTLFTMFTNFTOFTPFTQFTRFTSFTTFTUFTVFTWFTXFTYFTZFUGFUHFUIFUJFUKFULFUMFUNFQGFQHFQIFQJFQKFQLFQMFQNFQOFQPFQQFQRFQSFQTFQUFQVFQWFQXFQYFQZFRGFRHFRIFRJFRKFRLFRMFRNFROFRPFRQFRRFRSFRTFRUFRVFRWFRXFRYFRZFSGFSHFSIFSJFWSFWTFWUFWVFWWFWXFWYFWZFXGFXHFXIFXJFXKFXLFXMFXNFXOFXPFXQFXRFXSFXTFXUFXVFXWFXXFXYFXZFYGFYHFYIFYJFYKFYLFYMFYNFYOFYPFYQFYRFYSFYTFYUFYVFUOFUPFUQFURFUSFUTFUUFUVFUWFUXFUYFUZFVGFVHFVIFVJFVKFVLFVMFVNFVOFVPFVQFVRFVSFVTFVUFVVFVWFVXFVYFVZFWGFWHFWIFWJFWKFWLFWMFWNFWOFWPFWQFWRHGHIGHJGHKGHLGHMGHNGHOGHPGHQGHRGHSGHTGHUGHVGHWGHXGHYGHZGIHGIIGIJGIKGILGIMGINGIOGIPGIQGIRGISGITGIUGIVGIWGIXGIYGIZGJHGJIGJJGJKGJLGJMGJFYWFYXFYYFYZFZGFZHFZIFZJFZKFZLFZMFZNFZOFZPFZQFZRFZSFZTFZUFZVFZWFZXFZYFZZGGGHGGIGGJGGKGGLGGMGGNGGOGGPGGQGGRGGSGGTGGUGGVGGWGGXGGYGGZGHTGLUGLVGLWGLXGLYGLZGMHGMIGMJGMKGMLGMMGMNGMOGMPGMQGMRGMSGMTGMUGMVGMWGMXGMYGMZGNHGNIGNJGNKGNLGNMGNNGNOGNPGNQGNRGNSGNTGNUGNVGNWGNXGNYGNNGJOGJPGJQGJRGJSGJTGJUGJVGJWGJXGJYGJZGKHGKIGKJGKKGKLGKMGKNGKOGKPGKQGKRGKSGKTGKUGKVGKWGKXGKYGKZGLHGLIGLJGLKGLLGLMGLNGLOGLPGLQGLRGLSGLMGQNGQOGQPGQQGQRGQSGQTGQUGQVGQWGQXGQYGQZGRHGRIGRJGRKGRLGRMGRNGROGRPGRQGRRGRSGRTGRUGRVGRWGRXGRYGRZGSHGSIGSJGSKGSLGSMGSNGSOGSPGSQGSRGSZGOHGOIGOJGOKGOLGOMGONGOOGOPGOQGORGOSGOTGOUGOVGOWGOXGOYGOZGPHGPIGPJGPKGPLGPMGPNGPOGPPGPQGPRGPSGPTGPUGPVGPWGPXGPYGPZGQHGQIGQJGQKGQLGQYGUZGVHGVIGVJGVKGVLGVMGVNGVOGVPGVQGVRGVSGVTGVUGVVGVWGVXGVYGVZGWHGWIGWJGWKGWLGWMGWNGWOGWPGWQGWRGWSGWTGWUGWVGWWGWXGWYGWZGXHGXIGXJGXKGXSGSTGSUGSVGSWGSXGSYGSZGTHGTIGTJGTKGTLGTMGTNGTOGTPGTQGTRGTSGTTGTUGTVGTWGTXGTYGTZGUHGUIGUJGUKGULGUMGUNGUOGUPGUQGURGUSGUTGUUGUVGUWGUXGURGZSGZTGZUGZVGZWGZXGZYGZZHHHIHHJHHKHHLHHMHHNHHOHHPHHQHHRHHSHHTHHUHHVHHWHHXHHYHHZHIIHIJHIKHILHIMHINHIOHIPHIQHIRHISHITHIUHIVHIWHIXHIYHLGXMGXNGXOGXPGXQGXRGXSGXTGXUGXVGXWGXXGXYGXZGYHGYIGYJGYKGYLGYMGYNGYOGYPGYQGYRGYSGYTGYUGYVGYWGYXGYYGYZGZHGZIGZJGZKGZLGZMGZNGZOGZPGZQGZLPHLQHLRHLSHLTHLUHLVHLWHLXHLYHLZHMIHMJHMKHMLHMMHMNHMOHMPHMQHMRHMSHMTHMUHMVHMWHMXHMYHMZHNIHNJHNKHNLHNMHNNHNOHNPHNQHNRHNSHNTHNUHNVHNWHIZHJIHJJHJKHJLHJMHJNHJOHJPHJQHJRHJSHJTHJUHJVHJWHJXHJYHJZHKIHKJHKKHKLHKMHKNHKOHKPHKQHKRHKSHKTHKUHKVHKWHKXHKYHKZHLIHLJHLKHLLHLMHLNHLOHQNHQOHQPHQQHQRHQSHQTHQUHQVHQWHQXHQYHQZHRIHRJHRKHRLHRMHRNHROHRPHRQHRRHRSHRTHRUHRVHRWHRXHRYHRZHSIHSJHSKHSLHSMHSNHSOHSPHSQHSRHSSHSTHSUHNXHNYHNZHOIHOJHOKHOLHOMHONHOOHOPHOQHORHOSHOTHOUHOVHOWHOXHOYHOZHPIHPJHPKHPLHPMHPNHPOHPPHPQHPRHPSHPTHPUHPVHPWHPXHPYHPZHQIHQJHQKHQLHQMHVLHVMHVNHVOHVPHVQHVRHVSHVTHVUHVVHVWHVXHVYHVZHWIHWJHWKHWLHWMHWNHWOHWPHWQHWRHWSHWTHWUHWVHWWHWXHWYHWZHXIHXJHXKHXLHXMHXNHXOHXPHXQHXRHXSHSVHSWHSXHSYHSZHTIHTJHTKHTLHTMHTNHTOHTPHTQHTRHTSHTTHTUHTVHTWHTXHTYHTZHUIHUJHUKHULHUMHUNHUOHUPHUQHURHUSHUTHUUHUVHUWHUXHUYHUZHVIHVJHVKHIIKIILIIMIINIIOIIPIIQIIRIISIITIIUIIVIIWIIXIIYIIZIJJIJKIJLIJMIJNIJOIJPIJQIJRIJSIJTIJUIJVIJWIJXIJYIJZIKJIKKIKLIKMIKNIKOIKPIKQIKRIKSIKTXTHXUHXVHXWHXXHXYHXZHYIHYJHYKHYLHYMHYNHYOHYPHYQHYRHYSHYTHYUHYVHYWHYXHYYHYZHZIHZJHZKHZLHZMHZNHZOHZPHZQHZRHZSHZTHZUHZVHZWHZXHZYHZZIIIJINNINOINPINQINRINSINTINUINVINWINXINYINZIOJIOKIOLIOMIONIOOIOPIOQIORIOSIOTIOUIOVIOWIOXIOYIOZIPJIPKIPLIPMIPNIPOIPPIPQIPRIPSIPTIPUIPVIPWIKUIKVIKWIKXIKYIKZILJILKILLILMILNILOILPILQILRILSILTILUILVILWILXILYILZIMJIMKIMLIMMIMNIMOIMPIMQIMRIMSIMTIMUIMVIMWIMXIMYIMZINJINKINLINMISQISRISSISTISUISVISWISXISYISZITJITKITLITMITNITOITPITQITRITSITTITUITVITWITXITYITZIUJIUKIULIUMIUNIUOIUPIUQIURIUSIUTIUUIUVIUWIUXIUYIUZIPXIPYIPZIQJIQKIQLIQMIQNIQOIQPIQQIQRIQSIQTIQUIQVIQWIQXIQYIQZIRJIRKIRLIRMIRNIROIRPIRQIRRIRSIRTIRUIRVIRWIRXIRYIRZISJISKISLISMISNISOISPIXTIXUIXVIXWIXXIXYIXZIYJIYKIYLIYMIYNIYOIYPIYQIYRIYSIYTIYUIYVIYWIYXIYYIYZIZJIZKIZLIZMIZNIZOIZPIZQIZRIZSIZTIZUIZVIZWIZXIZYIZZJJJKJJLJJIVJIVKIVLIVMIVNIVOIVPIVQIVRIVSIVTIVUIVVIVWIVXIVYIVZIWJIWKIWLIWMIWNIWOIWPIWQIWRIWSIWTIWUIWVIWWIWXIWYIWZIXJIXKIXLIXMIXNIXOIXPIXQIXRIXSYJLZJMKJMLJMMJMNJMOJMPJMQJMRJMSJMTJMUJMVJMWJMXJMYJMZJNKJNLJNMJNNJNOJNPJNQJNRJNSJNTJNUJNVJNWJNXJNYJNZJOKJOLJOMJONJOOJOPJOQJORJOSJOTJOMJJNJJOJJPJJQJJRJJSJJTJJUJJVJJWJJXJJYJJZJKKJKLJKMJKNJKOJKPJKQJKRJKSJKTJKUJKVJKWJKXJKYJKZJLKJLLJLMJLNJLOJLPJLQJLRJLSJLTJLUJLVJLWJLXJLQJRRJRSJRTJRUJRVJRWJRXJRYJRZJSKJSLJSMJSNJSOJSPJSQJSRJSSJSTJSUJSVJSWJSXJSYJSZJTKJTLJTMJTNJTOJTPJTQJTRJTSJTTJTUJTVJTWJTXJTYJTZJUKJULJUUJOVJOWJOXJOYJOZJPKJPLJPMJPNJPOJPPJPQJPRJPSJPTJPUJPVJPWJPXJPYJPZJQKJQLJQMJQNJQOJQPJQQJQRJQSJQTJQUJQVJQWJQXJQYJQZJRKJRLJRMJRNJROJRPJRYJWZJXKJXLJXMJXNJXOJXPJXQJXRJXSJXTJXUJXVJXWJXXJXYJXZJYKJYLJYMJYNJYOJYPJYQJYRJYSJYTJYUJYVJYWJYXJYYJYZJZKJZLJZMJZNJZOJZPJZQJZRJZSJZTJZMJUNJUOJUPJUQJURJUSJUTJUUJUVJUWJUXJUYJUZJVKJVLJVMJVNJVOJVPJVQJVRJVSJVTJVUJVVJVWJVXJVYJVZJWKJWLJWMJWNJWOJWPJWQJWRJWSJWTJWUJWVJWWJWXJWMTKMUKMVKMWKMXKMYKMZKNLKNMKNNKNOKNPKNQKNRKNSKNTKNUKNVKNWKNXKNYKNZKOLKOMKONKOOKOPKOQKORKOSKOTKOUKOVKOWKOXKOYKOZKPLKPMKPNKPOKPPKPQKPRKUJZVJZWJZXJZYJZZKKKLKKMKKNKKOKKPKKQKKRKKSKKTKKUKKVKKWKKXKKYKKZKLLKLMKLNKLOKLPKLQKLRKLSKLTKLUKLVKLWKLXKLYKLZKMLKMMKMNKMOKMPKMQKMRKMSKSRKSSKSTKSUKSVKSWKSXKSYKSZKTLKTMKTNKTOKTPKTQKTRKTSKTTKTUKTVKTWKTXKTYKTZKULKUMKUNKUOKUPKUQKURKUSKUTKUUKUVKUWKUXKUYKUZKVLKVMKVNKVOKVPKPSKPTKPUKPVKPWKPXKPYKPZKQLKQMKQNKQOKQPKQQKQRKQSKQTKQUKQVKQWKQXKQYKQZKRLKRMKRNKROKRPKRQKRRKRSKRTKRUKRVKRWKRXKRYKRZKSLKSMKSNKSOKSPKSQKYPKYQKYRKYSKYTKYUKYVKYWKYXKYYKYZKZLKZMKZNKZOKZPKZQKZRKZSKZTKZUKZVKZWKZXKZYKZZLLLMLLNLLOLLPLLQLLRLLSLLTLLULLVLLWLLXLLYLLZLMMLMNLMOLMPVQKVRKVSKVTKVUKVVKVWKVXKVYKVZKWLKWMKWNKWOKWPKWQKWRKWSKWTKWUKWVKWWKWXKWYKWZKXLKXMKXNKXOKXPKXQKXRKXSKXTKXUKXVKXWKXXKXYKXZKYLKYMKYNKYOKLPSLPTLPULPVLPWLPXLPYLPZLQMLQNLQOLQPLQQLQRLQSLQTLQULQVLQWLQXLQYLQZLRMLRNLROLRPLRQLRRLRSLRTLRULRVLRWLRXLRYLRZLSMLSNLSOLSPLSQLSRLSSLSTLMQLMRLMSLMTLMULMVLMWLMXLMYLMZLNMLNNLNOLNPLNQLNRLNSLNTLNULNVLNWLNXLNYLNZLOMLONLOOLOPLOQLORLOSLOTLOULOVLOWLOXLOYLOZLPMLPNLPOLPPLPQLPRLVWLVXLVYLVZLWMLWNLWOLWPLWQLWRLWSLWTLWULWVLWWLWXLWYLWZLXMLXNLXOLXPLXQLXRLXSLXTLXULXVLXWLXXLXYLXZLYMLYNLYOLYPLYQLYRLYSLYTLYULYVLYWLYXLSULSVLSWLSXLSYLSZLTMLTNLTOLTPLTQLTRLTSLTTLTULTVLTWLTXLTYLTZLUMLUNLUOLUPLUQLURLUSLUTLUULUVLUWLUXLUYLUZLVMLVNLVOLVPLVQLVRLVSLVTLVULVVOMOPMOQMORMOSMOTMOUMOVMOWMOXMOYMOZMPNMPOMPPMPQMPRMPSMPTMPUMPVMPWMPXMPYMPZMQNMQOMQPMQQMQRMQSMQTMQUMQVMQWMQXMQYMQZMRNMROMRPMRQMRRMRSMRLYYLYZLZMLZNLZOLZPLZQLZRLZSLZTLZULZVLZWLZXLZYLZZMMMNMMOMMPMMQMMRMMSMMTMMUMMVMMWMMXMMYMMZMNNMNOMNPMNQMNRMNSMNTMNUMNVMNWMNXMNYMNZMONMOYMUZMVNMVOMVPMVQMVRMVSMVTMVUMVVMVWMVXMVYMVZMWNMWOMWPMWQMWRMWSMWTMWUMWVMWWMWXMWYMWZMXNMXOMXPMXQMXRMXSMXTMXUMXVMXWMXXMXYMXZMYNMYOMYPMYTMRUMRVMRWMRXMRYMRZMSNMSOMSPMSQMSRMSSMSTMSUMSVMSWMSXMSYMSZMTNMTOMTPMTQMTRMTSMTTMTUMTVMTWMTXMTYMTZMUNMUOMUPMUQMURMUSMUTMUUMUVMUWMUXMUOXNOYNOZNPONPPNPQNPRNPSNPTNPUNPVNPWNPXNPYNPZNQONQPNQQNQRNQSNQTNQUNQVNQWNQXNQYNQZNRONRPNRQNRRNRSNRTNRUNRVNRWNRXNRYNRZNSONSPNSQNSRNSSNQMYRMYSMYTMYUMYVMYWMYXMYYMYZMZNMZOMZPMZQMZRMZSMZTMZUMZVMZWMZXMZYMZZNNNONNPNNQNNRNNSNNTNNUNNVNNWNNXNNYNNZNOONOPNOQNORNOSNOTNOUNOVNOWNWPNWQNWRNWSNWTNWUNWVNWWNWXNWYNWZNXONXPNXQNXRNXSNXTNXUNXVNXWNXXNXYNXZNYONYPNYQNYRNYSNYTNYUNYVNYWNYXNYYNYZNZONZPNZQNZRNZSNZTNZUNZVNZWNSTNSUNSVNSWNSXNSYNSZNTONTPNTQNTRNTSNTTNTUNTVNTWNTXNTYNTZNUONUPNUQNURNUSNUTNUUNUVNUWNUXNUYNUZNVONVPNVQNVRNVSNVTNVUNVVNVWNVXNVYNVZNWONORXORYORZOSPOSQOSROSSOSTOSUOSVOSWOSXOSYOSZOTPOTQOTROTSOTTOTUOTVOTWOTXOTYOTZOUPOUQOUROUSOUTOUUOUVOUWOUXOUYOUZOVPOVQOVROVSOVTOVUOVVOVWZXNZYNZZOOOPOOQOOROOSOOTOOUOOVOOWOOXOOYOOZOPPOPQOPROPSOPTOPUOPVOPWOPXOPYOPZOQPOQQOQROQSOQTOQUOQVOQWOQXOQYOQZORPORQORRORSORTORUORVORWOZXOZYOZZPPPQPPRPPSPPTPPUPPVPPWPPXPPYPPZPQQPQRPQSPQTPQUPQVPQWPQXPQYPQZPRQPRRPRSPRTPRUPRVPRWPRXPRYPRZPSQPSRPSSPSTPSUPSVPSWPSXPSYPSZPTOVXOVYOVZOWPOWQOWROWSOWTOWUOWVOWWOWXOWYOWZOXPOXQOXROXSOXTOXUOXVOXWOXXOXYOXZOYPOYQOYROYSOYTOYUOYVOYWOYXOYYOYZOZPOZQOZROZSOZTOZUOZVOZWQPTRPTSPTTPTUPTV \ No newline at end of file
diff --git a/neozip/test/GH-1600/packobj.gz b/neozip/test/GH-1600/packobj.gz
new file mode 100644
index 0000000000..d6c4405cf4
--- /dev/null
+++ b/neozip/test/GH-1600/packobj.gz
Binary files differ
diff --git a/neozip/test/GH-361/test.txt b/neozip/test/GH-361/test.txt
new file mode 100644
index 0000000000..2b102819f4
--- /dev/null
+++ b/neozip/test/GH-361/test.txt
@@ -0,0 +1,4 @@
+.....-.u..|u....-...!..A.#?)9.._B..F..|
+00000650 fa 13 88 89 2c 1f 81 0f e4 e9 ce 39 a0 87 2e 2e |....,......9....|
+00000660 a5 0c 08 9c ec fc 88 6d 16 02 0a a0 3d fc 36 29 |.......m....=.6)|
+00000670 8d f5 c3 ba 1d 07 f4 78 e1 a0 41 f9 89 15 a5 69 |.......x..A.... \ No newline at end of file
diff --git a/neozip/test/GH-364/test.bin b/neozip/test/GH-364/test.bin
new file mode 100644
index 0000000000..1b1cb4d44c
--- /dev/null
+++ b/neozip/test/GH-364/test.bin
Binary files differ
diff --git a/neozip/test/GH-382/defneg3.dat b/neozip/test/GH-382/defneg3.dat
new file mode 100644
index 0000000000..5fa6a08044
--- /dev/null
+++ b/neozip/test/GH-382/defneg3.dat
@@ -0,0 +1 @@
+oÌ™Ì?ÌOÌÃÌḩÌÕÌ>ÌÌÌàÌ̹̘ÌÔÌEÌsÌ—ÌÌ4̢̙̑Ì6ÌÌØÌæÌ\ÌÌÌ5̪̲̕ÌmÌÌ–Ìç̺̜ÌÙ̧ÌÌíÌíÌ–ÌÌëÌmÌìÌÎ̵ÌGÌïÌOÌÛÌ ÌÃÌòÌÎÌôÌ„Ì;Ì”ÌýÌ’ÌÓÌÀÌ×Ì,ÌÑÌ¢ÌáÌAÌ9Ì»ÌæÌ‚ÌÂÌsÌý̼ÌÝÌÌ­ÌeÌòÌÝÌUÌuÌí̱ÌËÌwÌùÌ•ÌDÌß̋̽Ìt̞̣̹ÌöÌôÌOÌîÌíÌ…ÌpÌGÌḭ̀ÌÀÌ(ÌÌÌ̤Ì{Ì“ÌßÌïÌÕÌÌøÌÌMÌ#ÌÌí̵ÌdÌ·ÌIÌßÌhÌ_ÌpÌJÌÇÌ¢ÌÎÌÌoÌÌêÌÁÌ;Ì<̘ÌZÌÈÌÑÌoÌW̄̿Ì}ÌáÌÌÌ:Ìá̧̻̕ÌeÌFÌtÌ(ÌEÌoÌàÌpÌÌ¢Ì(Ì;ÌþÌëÌóÌ!̹̹ÌÉÌÌœÌîÌÖÌ4ÌÈÌ3ÌëÌ‹ÌBÌŽÌÆÌuÌPÌ6Ì“ÌþÌ&̦̳̕ÌÁÌðÌ»ÌÌÌTÌÀ̧ÌbÌÌÒÌÕÌëÌ{ÌÆÌ¡ÌÊÌNÌ9ÌÇÌÌBÌÑ \ No newline at end of file
diff --git a/neozip/test/GH-751/test.txt b/neozip/test/GH-751/test.txt
new file mode 100644
index 0000000000..ef2143ece8
--- /dev/null
+++ b/neozip/test/GH-751/test.txt
@@ -0,0 +1 @@
+abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc
diff --git a/neozip/test/GH-979/pigz-2.6.tar.gz b/neozip/test/GH-979/pigz-2.6.tar.gz
new file mode 100644
index 0000000000..0d76ef8757
--- /dev/null
+++ b/neozip/test/GH-979/pigz-2.6.tar.gz
Binary files differ
diff --git a/neozip/test/Makefile.in b/neozip/test/Makefile.in
new file mode 100644
index 0000000000..5b45965926
--- /dev/null
+++ b/neozip/test/Makefile.in
@@ -0,0 +1,82 @@
+# Copyright (C) 1995-2024 Jean-loup Gailly and Mark Adler
+# Copyright 2015, Daniel Axtens, IBM Corporation
+# zlib license, see zlib.h
+
+CC=
+CFLAGS=
+EXE=
+SRCDIR=
+SRCTOP=
+LIBNAME=
+TEST_LDFLAGS=-L.. ../$(LIBNAME).a
+
+EMU_RUN=
+
+all: alltests
+
+alltests: #set by ../configure
+check_cross_dep:
+ifneq (,$(findstring qemu,$(EMU_RUN)))
+QEMU_VER:=$(shell command -v $(EMU_RUN) --version 2> /dev/null)
+ifeq (,$(QEMU_VER))
+$(error You need QEMU to run tests on non-native platform)
+endif
+endif
+
+ALL_SRC_FILES := $(wildcard ../*)
+
+teststatic: check_cross_dep
+ @TMPST=tmpst_$$$$; \
+ HELLOST=tmphellost_$$$$; \
+ if echo hello world | ${EMU_RUN} ../minigzip$(EXE) > $$HELLOST && ${EMU_RUN} ../minigzip$(EXE) -d < $$HELLOST && ${EMU_RUN} ../example$(EXE) $$TMPST; then \
+ echo ' *** zlib test OK ***'; \
+ else \
+ echo ' *** zlib test FAILED ***'; exit 1; \
+ fi; \
+ rm -f $$TMPST $$HELLOST
+
+testshared: check_cross_dep
+ @LD_LIBRARY_PATH=`pwd`/..:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \
+ LD_LIBRARYN32_PATH=`pwd`/..:$(LD_LIBRARYN32_PATH) ; export LD_LIBRARYN32_PATH; \
+ DYLD_LIBRARY_PATH=`pwd`/..:$(DYLD_LIBRARY_PATH) ; export DYLD_LIBRARY_PATH; \
+ SHLIB_PATH=`pwd`/..:$(SHLIB_PATH) ; export SHLIB_PATH; \
+ TMPSH=tmpsh_$$$$; \
+ HELLOSH=tmphellosh_$$$$; \
+ if echo hello world | ${EMU_RUN} ../minigzipsh$(EXE) > $$HELLOSH && ${EMU_RUN} ../minigzipsh$(EXE) -d < $$HELLOSH && ${EMU_RUN} ../examplesh$(EXE) $$TMPSH; then \
+ echo ' *** zlib shared test OK ***'; \
+ else \
+ echo ' *** zlib shared test FAILED ***'; exit 1; \
+ fi; \
+ rm -f $$TMPSH $$HELLOSH
+
+.PHONY: ghtests
+ghtests: testGH-361 testGH-364 testGH-751 testGH-1235
+
+.PHONY: testGH-361
+testGH-361:
+ $(EMU_RUN) ../minigzip$(EXE) -4 <$(SRCDIR)/GH-361/test.txt >/dev/null
+
+switchlevels$(EXE): $(SRCDIR)/switchlevels.c
+ $(CC) $(CFLAGS) -I.. -I$(SRCTOP) -o $@ $< $(TEST_LDFLAGS)
+
+.PHONY: testGH-364
+testGH-364: switchlevels$(EXE)
+ $(EMU_RUN) ./switchlevels$(EXE) 1 5 9 3 <$(SRCDIR)/GH-364/test.bin >/dev/null
+
+.PHONY: testGH-751
+testGH-751:
+ $(EMU_RUN) ../minigzip$(EXE) <$(SRCDIR)/GH-751/test.txt | $(EMU_RUN) ../minigzip$(EXE) -d >/dev/null
+
+gh1235$(EXE): $(SRCDIR)/gh1235.c
+ $(CC) $(CFLAGS) -I.. -I$(SRCTOP) -o $@ $< $(TEST_LDFLAGS)
+
+.PHONY: testGH-1235
+testGH-1235: gh1235$(EXE)
+ $(EMU_RUN) ./gh1235$(EXE)
+
+clean:
+ rm -f *.o *.gcda *.gcno *.gcov
+ rm -f switchlevels$(EXE) gh1235$(EXE)
+
+distclean: clean
+ rm -f Makefile
diff --git a/neozip/test/README.md b/neozip/test/README.md
new file mode 100644
index 0000000000..d844ba530f
--- /dev/null
+++ b/neozip/test/README.md
@@ -0,0 +1,37 @@
+Contents
+--------
+
+|Name|Description|
+|-|-|
+|[CVE-2003-0107](https://nvd.nist.gov/vuln/detail/CVE-2003-0107)|Buffer overflow in the gzprintf function, requires ZLIB_COMPAT|
+|[CVE-2002-0059](https://nvd.nist.gov/vuln/detail/CVE-2002-0059)|inflateEnd to release memory more than once|
+|[CVE-2004-0797](https://nvd.nist.gov/vuln/detail/CVE-2004-0797)|Error handling in inflate and inflateBack causes crash|
+|[CVE-2005-1849](https://nvd.nist.gov/vuln/detail/CVE-2005-1849)|inftrees.h bug causes crash|
+|[CVE-2005-2096](https://nvd.nist.gov/vuln/detail/CVE-2005-2096)|Buffer overflow when incomplete code description|
+|[CVE-2018-25032](https://nvd.nist.gov/vuln/detail/CVE-2018-25032)|Memory corruption when compressing if the input has many distant matches.|
+|[GH-361](https://github.com/zlib-ng/zlib-ng/issues/361)|Test case for overlapping matches|
+|[GH-364](https://github.com/zlib-ng/zlib-ng/issues/364)|Test case for switching compression levels|
+|[GH-382](https://github.com/zlib-ng/zlib-ng/issues/382)|Test case for deflateEnd returning -3 in deflate quick|
+
+Copying
+-------
+
+Some of the files in _test_ are licensed differently:
+
+ - test/data/fireworks.jpeg is Copyright 2013 Steinar H. Gunderson, and
+ is licensed under the Creative Commons Attribution 3.0 license
+ (CC-BY-3.0). See https://creativecommons.org/licenses/by/3.0/
+ for more information.
+
+ - test/data/paper-100k.pdf is an excerpt (bytes 92160 to 194560) from the paper
+ “Combinatorial Modeling of Chromatin Features Quantitatively Predicts DNA
+ Replication Timing in _Drosophila_†by Federico Comoglio and Renato Paro,
+ which is licensed under the CC-BY license. See
+ https://www.ploscompbiol.org/static/license for more information.
+
+ - test/data/lcet10.txt is from Project Gutenberg. It does not have expired
+ copyright, but is still in the public domain according to the license information.
+ (https://www.gutenberg.org/ebooks/53).
+
+ - test/GH-382/defneg3.dat was the smallest file generated by Nathan Moinvaziri
+ that reproduced GH-382. It is licensed under the terms of the zlib license.
diff --git a/neozip/test/abi/ignore b/neozip/test/abi/ignore
new file mode 100644
index 0000000000..3329b6c19c
--- /dev/null
+++ b/neozip/test/abi/ignore
@@ -0,0 +1,11 @@
+# See https://sourceware.org/libabigail/manual/libabigail-concepts.html#suppression-specifications
+
+[suppress_type]
+ name = internal_state
+
+[suppress_type]
+ name_regexp = z_stream.*
+
+# Size varies with version number
+[suppress_variable]
+ name_regexp = z(|ng|libng)_(|v)string
diff --git a/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-aarch64-unknown-linux-gnu.abi b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-aarch64-unknown-linux-gnu.abi
new file mode 100644
index 0000000000..cabe281608
--- /dev/null
+++ b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-aarch64-unknown-linux-gnu.abi
@@ -0,0 +1,1293 @@
+<abi-corpus version='2.2' path='btmp1/libz.so.1.2.13' architecture='elf-arm-aarch64' soname='libz.so.1'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld-linux-aarch64.so.1'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='adler32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compressBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen64' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_op' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateCopy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateGetDictionary' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateParams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePending' version='ZLIB_1.2.5.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePrime' version='ZLIB_1.2.0.8' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateTune' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='get_crc_table' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzbuffer' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclearerr' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_r' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_w' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdirect' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzeof' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzerror' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzflush' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfread' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfwrite' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc_' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgets' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset64' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzprintf' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputs' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzread' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzrewind' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzsetparams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzungetc' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzvprintf' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzwrite' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBack' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackEnd' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackInit_' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCodesUsed' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCopy' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetDictionary' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateMark' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflatePrime' version='ZLIB_1.2.2.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset2' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSyncPoint' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateUndermine' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateValidate' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress2' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zError' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibCompileFlags' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibVersion' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <abi-instr address-size='64' path='src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-1'/>
+ <typedef-decl name='Byte' type-id='type-id-2' filepath='./zconf.h' line='397' column='1' id='type-id-3'/>
+ <typedef-decl name='Bytef' type-id='type-id-3' filepath='./zconf.h' line='406' column='1' id='type-id-4'/>
+ <typedef-decl name='__off64_t' type-id='type-id-1' filepath='/usr/aarch64-linux-gnu/include/bits/types.h' line='153' column='1' id='type-id-5'/>
+ <typedef-decl name='__off_t' type-id='type-id-1' filepath='/usr/aarch64-linux-gnu/include/bits/types.h' line='152' column='1' id='type-id-6'/>
+ <typedef-decl name='off64_t' type-id='type-id-5' filepath='/usr/aarch64-linux-gnu/include/sys/types.h' line='92' column='1' id='type-id-7'/>
+ <typedef-decl name='off_t' type-id='type-id-6' filepath='/usr/aarch64-linux-gnu/include/sys/types.h' line='85' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-9' filepath='/usr/lib/gcc-cross/aarch64-linux-gnu/13/include/stddef.h' line='214' column='1' id='type-id-10'/>
+ <typedef-decl name='uInt' type-id='type-id-11' filepath='./zconf.h' line='399' column='1' id='type-id-12'/>
+ <typedef-decl name='uLong' type-id='type-id-9' filepath='./zconf.h' line='400' column='1' id='type-id-13'/>
+ <typedef-decl name='z_size_t' type-id='type-id-10' filepath='./zconf.h' line='251' column='1' id='type-id-14'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-11'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-4' const='yes' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-15' size-in-bits='64' id='type-id-16'/>
+ <function-decl name='adler32_z' mangled-name='adler32_z' filepath='src.d/adler32.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='64' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='65' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/adler32.c' line='66' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32' mangled-name='adler32' filepath='src.d/adler32.c' line='134' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='135' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='136' column='1'/>
+ <parameter type-id='type-id-12' name='len' filepath='src.d/adler32.c' line='137' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine' mangled-name='adler32_combine' filepath='src.d/adler32.c' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='173' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='174' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/adler32.c' line='175' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine64' mangled-name='adler32_combine64' filepath='src.d/adler32.c' line='180' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='181' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='182' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/adler32.c' line='183' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='uLongf' type-id='type-id-13' filepath='./zconf.h' line='411' column='1' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-18'/>
+ <function-decl name='compress2' mangled-name='compress2' filepath='src.d/compress.c' line='22' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compress2'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='23' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='24' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='26' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/compress.c' line='27' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compress' mangled-name='compress' filepath='src.d/compress.c' line='68' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='69' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='70' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='71' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='72' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compressBound' mangled-name='compressBound' filepath='src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compressBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='82' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflate' filepath='src.d/zlib.h' line='250' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateEnd' filepath='src.d/zlib.h' line='363' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateInit_' filepath='src.d/zlib.h' line='1781' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/crc32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='z_crc_t' type-id='type-id-11' filepath='./zconf.h' line='435' column='1' id='type-id-23'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-24'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-25'/>
+ <qualified-type-def type-id='type-id-23' const='yes' id='type-id-26'/>
+ <pointer-type-def type-id='type-id-26' size-in-bits='64' id='type-id-27'/>
+ <function-decl name='get_crc_table' mangled-name='get_crc_table' filepath='src.d/crc32.c' line='595' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_crc_table'>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='crc32_z' mangled-name='crc32_z' filepath='src.d/crc32.c' line='748' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-9' name='crc' filepath='src.d/crc32.c' line='749' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='750' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/crc32.c' line='751' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32' mangled-name='crc32' filepath='src.d/crc32.c' line='1072' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32'>
+ <parameter type-id='type-id-9' name='crc' filepath='src.d/crc32.c' line='1073' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='1074' column='1'/>
+ <parameter type-id='type-id-12' name='len' filepath='src.d/crc32.c' line='1075' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine64' mangled-name='crc32_combine64' filepath='src.d/crc32.c' line='1081' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1082' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1083' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1084' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine' mangled-name='crc32_combine' filepath='src.d/crc32.c' line='1093' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1094' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1095' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1096' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen64' mangled-name='crc32_combine_gen64' filepath='src.d/crc32.c' line='1102' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_gen64@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1103' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen' mangled-name='crc32_combine_gen' filepath='src.d/crc32.c' line='1112' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_gen@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1113' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_op' mangled-name='crc32_combine_op' filepath='src.d/crc32.c' line='1119' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_op@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1120' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1121' column='1'/>
+ <parameter type-id='type-id-13' name='op' filepath='src.d/crc32.c' line='1122' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-28'/>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1248' id='type-id-30'>
+ <subrange length='39' lower-bound='0' upper-bound='38' type-id='type-id-9' id='type-id-31'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='18336' id='type-id-32'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1952' id='type-id-34'>
+ <subrange length='61' lower-bound='0' upper-bound='60' type-id='type-id-9' id='type-id-35'/>
+ </array-type-def>
+ <type-decl name='int' size-in-bits='32' id='type-id-20'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-36'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='68' column='1' id='type-id-29'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-37' visibility='default' filepath='src.d/deflate.h' line='72' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-38' visibility='default' filepath='src.d/deflate.h' line='76' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='gz_header_s' size-in-bits='640' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='114' column='1' id='type-id-39'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='time' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='xflags' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='os' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='extra_len' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='extra_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='name' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='name_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='comment' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='comm_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='hcrc' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='done' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='127' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='internal_state' size-in-bits='47616' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='100' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='status' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_buf' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='pending_buf_size' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='pending_out' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='pending' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='wrap' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='gzhead' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='gzindex' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='method' type-id='type-id-3' visibility='default' filepath='src.d/deflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='last_flush' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='w_size' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='w_bits' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='w_mask' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='window' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='window_size' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='prev' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='head' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='140' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='ins_h' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='142' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='hash_size' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='143' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='hash_bits' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='144' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='hash_mask' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='hash_shift' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='147' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='block_start' type-id='type-id-1' visibility='default' filepath='src.d/deflate.h' line='154' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='match_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='159' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='prev_match' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='match_available' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='161' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1376'>
+ <var-decl name='strstart' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='162' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='match_start' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='163' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='lookahead' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='164' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='prev_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='max_chain_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='171' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='max_lazy_match' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1568'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1600'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1632'>
+ <var-decl name='good_match' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1664'>
+ <var-decl name='nice_match' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='194' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1696'>
+ <var-decl name='dyn_ltree' type-id='type-id-32' visibility='default' filepath='src.d/deflate.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20032'>
+ <var-decl name='dyn_dtree' type-id='type-id-34' visibility='default' filepath='src.d/deflate.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='21984'>
+ <var-decl name='bl_tree' type-id='type-id-30' visibility='default' filepath='src.d/deflate.h' line='200' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23232'>
+ <var-decl name='l_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23424'>
+ <var-decl name='d_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23616'>
+ <var-decl name='bl_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='204' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23808'>
+ <var-decl name='bl_count' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='206' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24064'>
+ <var-decl name='heap' type-id='type-id-36' visibility='default' filepath='src.d/deflate.h' line='209' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42400'>
+ <var-decl name='heap_len' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42432'>
+ <var-decl name='heap_max' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='211' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42464'>
+ <var-decl name='depth' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='216' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47104'>
+ <var-decl name='sym_buf' type-id='type-id-48' visibility='default' filepath='src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47168'>
+ <var-decl name='lit_bufsize' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='222' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47200'>
+ <var-decl name='sym_next' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='242' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47232'>
+ <var-decl name='sym_end' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='243' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47296'>
+ <var-decl name='opt_len' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='245' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47360'>
+ <var-decl name='static_len' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='246' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47424'>
+ <var-decl name='matches' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='247' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47456'>
+ <var-decl name='insert' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='248' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47488'>
+ <var-decl name='bi_buf' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='255' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47520'>
+ <var-decl name='bi_valid' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='259' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47552'>
+ <var-decl name='high_water' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='264' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='tree_desc_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='86' column='1' id='type-id-45'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='max_code' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='stat_desc' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='89' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='z_stream_s' size-in-bits='896' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='86' column='1' id='type-id-52'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='avail_in' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='total_in' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='next_out' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='avail_out' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='92' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total_out' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='msg' type-id='type-id-53' visibility='default' filepath='src.d/zlib.h' line='95' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='state' type-id='type-id-54' visibility='default' filepath='src.d/zlib.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='zalloc' type-id='type-id-55' visibility='default' filepath='src.d/zlib.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='zfree' type-id='type-id-56' visibility='default' filepath='src.d/zlib.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='opaque' type-id='type-id-57' visibility='default' filepath='src.d/zlib.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='data_type' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='adler' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='reserved' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='105' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='IPos' type-id='type-id-11' filepath='src.d/deflate.h' line='94' column='1' id='type-id-44'/>
+ <typedef-decl name='Pos' type-id='type-id-49' filepath='src.d/deflate.h' line='92' column='1' id='type-id-58'/>
+ <typedef-decl name='Posf' type-id='type-id-58' filepath='src.d/deflate.h' line='93' column='1' id='type-id-59'/>
+ <typedef-decl name='alloc_func' type-id='type-id-60' filepath='src.d/zlib.h' line='81' column='1' id='type-id-55'/>
+ <typedef-decl name='charf' type-id='type-id-28' filepath='./zconf.h' line='408' column='1' id='type-id-61'/>
+ <typedef-decl name='ct_data' type-id='type-id-29' filepath='src.d/deflate.h' line='77' column='1' id='type-id-62'/>
+ <typedef-decl name='deflate_state' type-id='type-id-40' filepath='src.d/deflate.h' line='271' column='1' id='type-id-63'/>
+ <typedef-decl name='free_func' type-id='type-id-64' filepath='src.d/zlib.h' line='82' column='1' id='type-id-56'/>
+ <typedef-decl name='gz_header' type-id='type-id-39' filepath='src.d/zlib.h' line='129' column='1' id='type-id-65'/>
+ <typedef-decl name='gz_headerp' type-id='type-id-66' filepath='src.d/zlib.h' line='131' column='1' id='type-id-42'/>
+ <typedef-decl name='uch' type-id='type-id-2' filepath='src.d/zutil.h' line='39' column='1' id='type-id-67'/>
+ <typedef-decl name='uchf' type-id='type-id-67' filepath='src.d/zutil.h' line='40' column='1' id='type-id-68'/>
+ <typedef-decl name='ulg' type-id='type-id-9' filepath='src.d/zutil.h' line='43' column='1' id='type-id-41'/>
+ <typedef-decl name='ush' type-id='type-id-69' filepath='src.d/zutil.h' line='41' column='1' id='type-id-49'/>
+ <typedef-decl name='z_stream' type-id='type-id-52' filepath='src.d/zlib.h' line='106' column='1' id='type-id-70'/>
+ <typedef-decl name='z_streamp' type-id='type-id-71' filepath='src.d/zlib.h' line='108' column='1' id='type-id-21'/>
+ <array-type-def dimensions='1' type-id='type-id-67' size-in-bits='4584' id='type-id-47'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='73' column='1' id='type-id-38'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='74' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='75' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='69' column='1' id='type-id-37'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='70' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='71' column='1'/>
+ </data-member>
+ </union-decl>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-69'/>
+ <array-type-def dimensions='1' type-id='type-id-49' size-in-bits='256' id='type-id-46'>
+ <subrange length='16' lower-bound='0' upper-bound='15' type-id='type-id-9' id='type-id-72'/>
+ </array-type-def>
+ <pointer-type-def type-id='type-id-4' size-in-bits='64' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-59' size-in-bits='64' id='type-id-43'/>
+ <pointer-type-def type-id='type-id-28' size-in-bits='64' id='type-id-53'/>
+ <pointer-type-def type-id='type-id-61' size-in-bits='64' id='type-id-73'/>
+ <qualified-type-def type-id='type-id-28' const='yes' id='type-id-74'/>
+ <pointer-type-def type-id='type-id-74' size-in-bits='64' id='type-id-22'/>
+ <pointer-type-def type-id='type-id-62' size-in-bits='64' id='type-id-50'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-65' size-in-bits='64' id='type-id-66'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-40' size-in-bits='64' id='type-id-54'/>
+ <pointer-type-def type-id='type-id-77' size-in-bits='64' id='type-id-60'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-68' size-in-bits='64' id='type-id-48'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-80' size-in-bits='64' id='type-id-64'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='64' id='type-id-71'/>
+ <qualified-type-def type-id='type-id-81' const='yes' id='type-id-82'/>
+ <pointer-type-def type-id='type-id-82' size-in-bits='64' id='type-id-51'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-83'/>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-57'/>
+ <function-decl name='memcpy' filepath='/usr/aarch64-linux-gnu/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/aarch64-linux-gnu/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='deflateInit2_' mangled-name='deflateInit2_' filepath='src.d/deflate.c' line='237' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateInit2_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='239' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='240' column='1'/>
+ <parameter type-id='type-id-20' name='method' filepath='src.d/deflate.c' line='241' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/deflate.c' line='242' column='1'/>
+ <parameter type-id='type-id-20' name='memLevel' filepath='src.d/deflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/deflate.c' line='245' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/deflate.c' line='246' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetDictionary' mangled-name='deflateSetDictionary' filepath='src.d/deflate.c' line='412' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='413' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/deflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-12' name='dictLength' filepath='src.d/deflate.c' line='415' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateGetDictionary' mangled-name='deflateGetDictionary' filepath='src.d/deflate.c' line='481' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateGetDictionary@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='482' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/deflate.c' line='483' column='1'/>
+ <parameter type-id='type-id-78' name='dictLength' filepath='src.d/deflate.c' line='484' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateResetKeep' mangled-name='deflateResetKeep' filepath='src.d/deflate.c' line='503' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='504' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateReset' mangled-name='deflateReset' filepath='src.d/deflate.c' line='541' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateReset'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='542' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetHeader' mangled-name='deflateSetHeader' filepath='src.d/deflate.c' line='553' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateSetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='554' column='1'/>
+ <parameter type-id='type-id-42' name='head' filepath='src.d/deflate.c' line='555' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePending' mangled-name='deflatePending' filepath='src.d/deflate.c' line='564' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflatePending@@ZLIB_1.2.5.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='567' column='1'/>
+ <parameter type-id='type-id-79' name='pending' filepath='src.d/deflate.c' line='565' column='1'/>
+ <parameter type-id='type-id-76' name='bits' filepath='src.d/deflate.c' line='566' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePrime' mangled-name='deflatePrime' filepath='src.d/deflate.c' line='578' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflatePrime@@ZLIB_1.2.0.8'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='579' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/deflate.c' line='580' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/deflate.c' line='581' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateParams' mangled-name='deflateParams' filepath='src.d/deflate.c' line='605' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateParams'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='606' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='607' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='608' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateTune' mangled-name='deflateTune' filepath='src.d/deflate.c' line='654' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateTune@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='655' column='1'/>
+ <parameter type-id='type-id-20' name='good_length' filepath='src.d/deflate.c' line='656' column='1'/>
+ <parameter type-id='type-id-20' name='max_lazy' filepath='src.d/deflate.c' line='657' column='1'/>
+ <parameter type-id='type-id-20' name='nice_length' filepath='src.d/deflate.c' line='658' column='1'/>
+ <parameter type-id='type-id-20' name='max_chain' filepath='src.d/deflate.c' line='659' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateBound' mangled-name='deflateBound' filepath='src.d/deflate.c' line='696' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='697' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/deflate.c' line='698' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflateCopy' mangled-name='deflateCopy' filepath='src.d/deflate.c' line='1156' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateCopy'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/deflate.c' line='1157' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/deflate.c' line='1158' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <typedef-decl name='static_tree_desc' type-id='type-id-83' filepath='src.d/deflate.h' line='84' column='1' id='type-id-81'/>
+ <function-decl name='_tr_init' filepath='src.d/deflate.h' line='294' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_flush_block' filepath='src.d/deflate.h' line='296' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_flush_bits' filepath='src.d/deflate.h' line='298' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_align' filepath='src.d/deflate.h' line='299' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_stored_block' filepath='src.d/deflate.h' line='300' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='crc32' filepath='src.d/zlib.h' line='1727' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-13'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zcalloc' filepath='src.d/zutil.h' line='261' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-57'/>
+ </function-decl>
+ <function-decl name='zcfree' filepath='src.d/zutil.h' line='263' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-57'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <type-decl name='void' id='type-id-85'/>
+ <pointer-type-def type-id='type-id-85' id='type-id-84'/>
+ <function-type size-in-bits='64' id='type-id-80'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-57'/>
+ <return type-id='type-id-85'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-77'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-12'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-57'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzclose.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gzFile_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='1834' column='1' id='type-id-86'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='1835' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='next' type-id='type-id-87' visibility='default' filepath='src.d/zlib.h' line='1836' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pos' type-id='type-id-7' visibility='default' filepath='src.d/zlib.h' line='1837' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gzFile' type-id='type-id-88' filepath='src.d/zlib.h' line='1302' column='1' id='type-id-89'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='64' id='type-id-88'/>
+ <function-decl name='gzclose' mangled-name='gzclose' filepath='src.d/gzclose.c' line='11' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzclose'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzclose.c' line='12' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_r' filepath='src.d/zlib.h' line='1644' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_w' filepath='src.d/zlib.h' line='1645' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='open' filepath='/usr/aarch64-linux-gnu/include/fcntl.h' line='209' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='snprintf' filepath='/usr/aarch64-linux-gnu/include/stdio.h' line='385' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-53'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/aarch64-linux-gnu/include/stdlib.h' line='672' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='free' filepath='/usr/aarch64-linux-gnu/include/stdlib.h' line='687' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/aarch64-linux-gnu/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/aarch64-linux-gnu/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-5'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='gzopen' mangled-name='gzopen' filepath='src.d/gzlib.c' line='272' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzopen'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='273' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='274' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzopen64' mangled-name='gzopen64' filepath='src.d/gzlib.c' line='280' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzopen64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='281' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='282' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzdopen' mangled-name='gzdopen' filepath='src.d/gzlib.c' line='288' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzdopen'>
+ <parameter type-id='type-id-20' name='fd' filepath='src.d/gzlib.c' line='289' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='290' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzbuffer' mangled-name='gzbuffer' filepath='src.d/gzlib.c' line='318' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzbuffer@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='319' column='1'/>
+ <parameter type-id='type-id-11' name='size' filepath='src.d/gzlib.c' line='320' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzrewind' mangled-name='gzrewind' filepath='src.d/gzlib.c' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzrewind'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='346' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzseek64' mangled-name='gzseek64' filepath='src.d/gzlib.c' line='368' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzseek64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='369' column='1'/>
+ <parameter type-id='type-id-7' name='offset' filepath='src.d/gzlib.c' line='370' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='371' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzseek' mangled-name='gzseek' filepath='src.d/gzlib.c' line='445' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzseek'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='446' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='src.d/gzlib.c' line='447' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='448' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gztell64' mangled-name='gztell64' filepath='src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gztell64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='458' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gztell' mangled-name='gztell' filepath='src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gztell'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='475' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzoffset64' mangled-name='gzoffset64' filepath='src.d/gzlib.c' line='484' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzoffset64@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='485' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzoffset' mangled-name='gzoffset' filepath='src.d/gzlib.c' line='507' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzoffset@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='508' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzeof' mangled-name='gzeof' filepath='src.d/gzlib.c' line='517' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzeof'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='518' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzerror' mangled-name='gzerror' filepath='src.d/gzlib.c' line='534' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzerror'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='535' column='1'/>
+ <parameter type-id='type-id-76' name='errnum' filepath='src.d/gzlib.c' line='536' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclearerr' mangled-name='gzclearerr' filepath='src.d/gzlib.c' line='555' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzclearerr@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='556' column='1'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <type-decl name='variadic parameter type' id='type-id-90'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1920' is-struct='yes' naming-typedef-id='type-id-91' visibility='default' filepath='src.d/gzguts.h' line='170' column='1' id='type-id-92'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-86' visibility='default' filepath='src.d/gzguts.h' line='172' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='mode' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='fd' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='path' type-id='type-id-53' visibility='default' filepath='src.d/gzguts.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='size' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='180' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='want' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='in' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='182' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='out' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='183' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='direct' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='184' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='how' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='start' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='eof' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='past' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='192' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reset' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='193' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='skip' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='195' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='seek' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='196' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='err' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='msg' type-id='type-id-53' visibility='default' filepath='src.d/gzguts.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='strm' type-id='type-id-70' visibility='default' filepath='src.d/gzguts.h' line='201' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__ssize_t' type-id='type-id-1' filepath='/usr/aarch64-linux-gnu/include/bits/types.h' line='194' column='1' id='type-id-93'/>
+ <typedef-decl name='gz_state' type-id='type-id-92' filepath='src.d/gzguts.h' line='202' column='1' id='type-id-91'/>
+ <typedef-decl name='gz_statep' type-id='type-id-94' filepath='src.d/gzguts.h' line='203' column='1' id='type-id-95'/>
+ <typedef-decl name='ssize_t' type-id='type-id-93' filepath='/usr/aarch64-linux-gnu/include/sys/types.h' line='108' column='1' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-91' size-in-bits='64' id='type-id-94'/>
+ <typedef-decl name='voidp' type-id='type-id-84' filepath='./zconf.h' line='416' column='1' id='type-id-97'/>
+ <function-decl name='__errno_location' filepath='/usr/aarch64-linux-gnu/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-76'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/aarch64-linux-gnu/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/aarch64-linux-gnu/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-53'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/aarch64-linux-gnu/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='read' filepath='/usr/aarch64-linux-gnu/include/unistd.h' line='371' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-96'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='src.d/gzguts.h' line='206' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='gzread' mangled-name='gzread' filepath='src.d/gzread.c' line='373' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzread'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='374' column='1'/>
+ <parameter type-id='type-id-97' name='buf' filepath='src.d/gzread.c' line='375' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzread.c' line='376' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfread' mangled-name='gzfread' filepath='src.d/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzfread@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-97' name='buf' filepath='src.d/gzread.c' line='410' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzread.c' line='411' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzread.c' line='412' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='413' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzgetc' mangled-name='gzgetc' filepath='src.d/gzread.c' line='445' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgetc'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='446' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgetc_' mangled-name='gzgetc_' filepath='src.d/gzread.c' line='472' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgetc_@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='473' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzungetc' mangled-name='gzungetc' filepath='src.d/gzread.c' line='479' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzungetc@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzread.c' line='480' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='481' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgets' mangled-name='gzgets' filepath='src.d/gzread.c' line='539' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgets'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='540' column='1'/>
+ <parameter type-id='type-id-53' name='buf' filepath='src.d/gzread.c' line='541' column='1'/>
+ <parameter type-id='type-id-20' name='len' filepath='src.d/gzread.c' line='542' column='1'/>
+ <return type-id='type-id-53'/>
+ </function-decl>
+ <function-decl name='gzdirect' mangled-name='gzdirect' filepath='src.d/gzread.c' line='603' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzdirect@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='604' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate' filepath='src.d/zlib.h' line='400' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateEnd' filepath='src.d/zlib.h' line='520' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset' filepath='src.d/zlib.h' line='959' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit2_' filepath='src.d/zlib.h' line='1789' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='__va_list' size-in-bits='256' is-struct='yes' visibility='default' id='type-id-98'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='__stack' type-id='type-id-84' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='__gr_top' type-id='type-id-84' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='__vr_top' type-id='type-id-84' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='__gr_offs' type-id='type-id-20' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='__vr_offs' type-id='type-id-20' visibility='default'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-98' filepath='/usr/lib/gcc-cross/aarch64-linux-gnu/13/include/stdarg.h' line='40' column='1' id='type-id-99'/>
+ <typedef-decl name='va_list' type-id='type-id-99' filepath='/usr/lib/gcc-cross/aarch64-linux-gnu/13/include/stdarg.h' line='103' column='1' id='type-id-100'/>
+ <typedef-decl name='voidpc' type-id='type-id-84' filepath='./zconf.h' line='414' column='1' id='type-id-101'/>
+ <function-decl name='vsnprintf' filepath='/usr/aarch64-linux-gnu/include/stdio.h' line='389' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-53'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-99'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='memmove' filepath='/usr/aarch64-linux-gnu/include/string.h' line='47' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/aarch64-linux-gnu/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-96'/>
+ </function-decl>
+ <function-decl name='gzwrite' mangled-name='gzwrite' filepath='src.d/gzwrite.c' line='255' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzwrite'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='256' column='1'/>
+ <parameter type-id='type-id-101' name='buf' filepath='src.d/gzwrite.c' line='257' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfwrite' mangled-name='gzfwrite' filepath='src.d/gzwrite.c' line='283' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzfwrite@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-101' name='buf' filepath='src.d/gzwrite.c' line='284' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzwrite.c' line='285' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzwrite.c' line='286' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzputc' mangled-name='gzputc' filepath='src.d/gzwrite.c' line='313' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzputc'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='314' column='1'/>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzwrite.c' line='315' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzputs' mangled-name='gzputs' filepath='src.d/gzwrite.c' line='361' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzputs'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='362' column='1'/>
+ <parameter type-id='type-id-22' name='s' filepath='src.d/gzwrite.c' line='363' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzvprintf' mangled-name='gzvprintf' filepath='src.d/gzwrite.c' line='391' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzvprintf@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-100' name='va' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzprintf' mangled-name='gzprintf' filepath='src.d/gzwrite.c' line='463' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzprintf'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzflush' mangled-name='gzflush' filepath='src.d/gzwrite.c' line='565' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzflush'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='566' column='1'/>
+ <parameter type-id='type-id-20' name='flush' filepath='src.d/gzwrite.c' line='567' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzsetparams' mangled-name='gzsetparams' filepath='src.d/gzwrite.c' line='597' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzsetparams'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='598' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/gzwrite.c' line='599' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/gzwrite.c' line='600' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <enum-decl name='codetype' naming-typedef-id='type-id-102' filepath='src.d/inftrees.h' line='54' column='1' id='type-id-103'>
+ <underlying-type type-id='type-id-104'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-105' visibility='default' filepath='src.d/inftrees.h' line='24' column='1' id='type-id-106'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-69' visibility='default' filepath='src.d/inftrees.h' line='27' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-106' filepath='src.d/inftrees.h' line='28' column='1' id='type-id-105'/>
+ <typedef-decl name='codetype' type-id='type-id-103' filepath='src.d/inftrees.h' line='58' column='1' id='type-id-102'/>
+ <typedef-decl name='in_func' type-id='type-id-107' filepath='src.d/zlib.h' line='1094' column='1' id='type-id-108'/>
+ <typedef-decl name='out_func' type-id='type-id-109' filepath='src.d/zlib.h' line='1096' column='1' id='type-id-110'/>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-104'/>
+ <pointer-type-def type-id='type-id-105' size-in-bits='64' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-111' size-in-bits='64' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-113' size-in-bits='64' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-87'/>
+ <pointer-type-def type-id='type-id-87' size-in-bits='64' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-115' size-in-bits='64' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-69' size-in-bits='64' id='type-id-116'/>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-117'/>
+ <function-decl name='inflateBackInit_' mangled-name='inflateBackInit_' filepath='src.d/infback.c' line='28' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBackInit_@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='29' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/infback.c' line='30' column='1'/>
+ <parameter type-id='type-id-87' name='window' filepath='src.d/infback.c' line='31' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/infback.c' line='32' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/infback.c' line='33' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBack' mangled-name='inflateBack' filepath='src.d/infback.c' line='251' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBack@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='252' column='1'/>
+ <parameter type-id='type-id-108' name='in' filepath='src.d/infback.c' line='253' column='1'/>
+ <parameter type-id='type-id-84' name='in_desc' filepath='src.d/infback.c' line='254' column='1'/>
+ <parameter type-id='type-id-110' name='out' filepath='src.d/infback.c' line='255' column='1'/>
+ <parameter type-id='type-id-84' name='out_desc' filepath='src.d/infback.c' line='256' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBackEnd' mangled-name='inflateBackEnd' filepath='src.d/infback.c' line='635' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBackEnd@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='636' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate_fast' filepath='src.d/inffast.h' line='11' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='inflate_table' filepath='src.d/inftrees.h' line='60' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-102'/>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-112'/>
+ <parameter type-id='type-id-79'/>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-113'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-87'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-115'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-114'/>
+ <return type-id='type-id-11'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-118'/>
+ <function-decl name='inflateResetKeep' mangled-name='inflateResetKeep' filepath='src.d/inflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='120' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset2' mangled-name='inflateReset2' filepath='src.d/inflate.c' line='158' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateReset2@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='159' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/inflate.c' line='160' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit_' mangled-name='inflateInit_' filepath='src.d/inflate.c' line='242' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateInit_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/inflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/inflate.c' line='245' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflatePrime' mangled-name='inflatePrime' filepath='src.d/inflate.c' line='250' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflatePrime@@ZLIB_1.2.2.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='251' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/inflate.c' line='252' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/inflate.c' line='253' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetDictionary' mangled-name='inflateGetDictionary' filepath='src.d/inflate.c' line='1318' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateGetDictionary@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1319' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-78' name='dictLength' filepath='src.d/inflate.c' line='1321' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSetDictionary' mangled-name='inflateSetDictionary' filepath='src.d/inflate.c' line='1341' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1342' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/inflate.c' line='1343' column='1'/>
+ <parameter type-id='type-id-12' name='dictLength' filepath='src.d/inflate.c' line='1344' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetHeader' mangled-name='inflateGetHeader' filepath='src.d/inflate.c' line='1376' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateGetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1377' column='1'/>
+ <parameter type-id='type-id-42' name='head' filepath='src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSync' mangled-name='inflateSync' filepath='src.d/inflate.c' line='1427' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSync'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1428' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSyncPoint' mangled-name='inflateSyncPoint' filepath='src.d/inflate.c' line='1485' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSyncPoint'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1486' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateCopy' mangled-name='inflateCopy' filepath='src.d/inflate.c' line='1495' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateCopy@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/inflate.c' line='1496' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/inflate.c' line='1497' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateUndermine' mangled-name='inflateUndermine' filepath='src.d/inflate.c' line='1542' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateUndermine@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1543' column='1'/>
+ <parameter type-id='type-id-20' name='subvert' filepath='src.d/inflate.c' line='1544' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateValidate' mangled-name='inflateValidate' filepath='src.d/inflate.c' line='1560' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateValidate@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1561' column='1'/>
+ <parameter type-id='type-id-20' name='check' filepath='src.d/inflate.c' line='1562' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateMark' mangled-name='inflateMark' filepath='src.d/inflate.c' line='1575' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateMark@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1576' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='inflateCodesUsed' mangled-name='inflateCodesUsed' filepath='src.d/inflate.c' line='1588' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateCodesUsed@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1589' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-119' size-in-bits='2048' id='type-id-120'>
+ <subrange length='256' lower-bound='0' upper-bound='255' type-id='type-id-9' id='type-id-121'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-119' size-in-bits='4096' id='type-id-122'>
+ <subrange length='512' lower-bound='0' upper-bound='511' type-id='type-id-9' id='type-id-123'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-119' size-in-bits='unknown' id='type-id-124'>
+ <subrange length='unknown' lower-bound='0' upper-bound='0' id='type-id-125'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-67' const='yes' id='type-id-119'/>
+ <var-decl name='_length_code' type-id='type-id-120' visibility='default' filepath='src.d/deflate.h' line='317' column='1'/>
+ <var-decl name='_dist_code' type-id='type-id-122' visibility='default' filepath='src.d/deflate.h' line='318' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-126'/>
+ <function-decl name='uncompress2' mangled-name='uncompress2' filepath='src.d/uncompr.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='uncompress2@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='28' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='29' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='30' column='1'/>
+ <parameter type-id='type-id-126' name='sourceLen' filepath='src.d/uncompr.c' line='31' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='uncompress' mangled-name='uncompress' filepath='src.d/uncompr.c' line='86' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='uncompress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='87' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='88' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='89' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/uncompr.c' line='90' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-127' size-in-bits='640' id='type-id-128'>
+ <subrange length='10' lower-bound='0' upper-bound='9' type-id='type-id-9' id='type-id-129'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-53' const='yes' id='type-id-127'/>
+ <function-decl name='zlibVersion' mangled-name='zlibVersion' filepath='src.d/zutil.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibVersion'>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='zlibCompileFlags' mangled-name='zlibCompileFlags' filepath='src.d/zutil.c' line='32' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibCompileFlags@@ZLIB_1.2.0.2'>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zError' mangled-name='zError' filepath='src.d/zutil.c' line='135' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zError'>
+ <parameter type-id='type-id-20' name='err' filepath='src.d/zutil.c' line='136' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <var-decl name='z_errmsg' type-id='type-id-128' visibility='default' filepath='src.d/zutil.h' line='56' column='1'/>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-arm-unknown-linux-gnueabi.abi b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-arm-unknown-linux-gnueabi.abi
new file mode 100644
index 0000000000..13b6e33297
--- /dev/null
+++ b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-arm-unknown-linux-gnueabi.abi
@@ -0,0 +1,1276 @@
+<abi-corpus version='2.2' path='btmp1/libz.so.1.2.13' architecture='elf-arm' soname='libz.so.1'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld-linux.so.3'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='adler32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compressBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen64' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_op' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateCopy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateGetDictionary' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateParams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePending' version='ZLIB_1.2.5.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePrime' version='ZLIB_1.2.0.8' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateTune' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='get_crc_table' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzbuffer' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclearerr' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_r' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_w' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdirect' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzeof' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzerror' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzflush' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfread' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfwrite' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc_' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgets' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset64' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzprintf' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputs' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzread' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzrewind' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzsetparams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzungetc' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzvprintf' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzwrite' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBack' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackEnd' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackInit_' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCodesUsed' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCopy' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetDictionary' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateMark' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflatePrime' version='ZLIB_1.2.2.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset2' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSyncPoint' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateUndermine' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateValidate' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress2' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zError' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibCompileFlags' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibVersion' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <abi-instr address-size='32' path='src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-1'/>
+ <typedef-decl name='Byte' type-id='type-id-2' filepath='./zconf.h' line='397' column='1' id='type-id-3'/>
+ <typedef-decl name='Bytef' type-id='type-id-3' filepath='./zconf.h' line='406' column='1' id='type-id-4'/>
+ <typedef-decl name='__int64_t' type-id='type-id-1' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='47' column='1' id='type-id-5'/>
+ <typedef-decl name='__off64_t' type-id='type-id-5' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='153' column='1' id='type-id-6'/>
+ <typedef-decl name='off64_t' type-id='type-id-6' filepath='/usr/arm-linux-gnueabi/include/sys/types.h' line='92' column='1' id='type-id-7'/>
+ <typedef-decl name='off_t' type-id='type-id-6' filepath='/usr/arm-linux-gnueabi/include/sys/types.h' line='87' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-9' filepath='/usr/lib/gcc-cross/arm-linux-gnueabi/13/include/stddef.h' line='214' column='1' id='type-id-10'/>
+ <typedef-decl name='uInt' type-id='type-id-9' filepath='./zconf.h' line='399' column='1' id='type-id-11'/>
+ <typedef-decl name='uLong' type-id='type-id-12' filepath='./zconf.h' line='400' column='1' id='type-id-13'/>
+ <typedef-decl name='z_size_t' type-id='type-id-10' filepath='./zconf.h' line='251' column='1' id='type-id-14'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-9'/>
+ <type-decl name='unsigned long int' size-in-bits='32' id='type-id-12'/>
+ <qualified-type-def type-id='type-id-4' const='yes' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-15' size-in-bits='32' id='type-id-16'/>
+ <function-decl name='adler32_z' mangled-name='adler32_z' filepath='src.d/adler32.c' line='63' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='64' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='65' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/adler32.c' line='66' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32' mangled-name='adler32' filepath='src.d/adler32.c' line='134' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='135' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='136' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/adler32.c' line='137' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine' mangled-name='adler32_combine' filepath='src.d/adler32.c' line='172' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='173' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='174' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/adler32.c' line='175' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine64' mangled-name='adler32_combine64' filepath='src.d/adler32.c' line='180' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='181' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='182' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/adler32.c' line='183' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='uLongf' type-id='type-id-13' filepath='./zconf.h' line='411' column='1' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='32' id='type-id-18'/>
+ <function-decl name='compress2' mangled-name='compress2' filepath='src.d/compress.c' line='22' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compress2'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='23' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='24' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='26' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/compress.c' line='27' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compress' mangled-name='compress' filepath='src.d/compress.c' line='68' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='69' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='70' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='71' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='72' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compressBound' mangled-name='compressBound' filepath='src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compressBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='82' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflate' filepath='src.d/zlib.h' line='250' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateEnd' filepath='src.d/zlib.h' line='363' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateInit_' filepath='src.d/zlib.h' line='1781' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/crc32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='z_crc_t' type-id='type-id-9' filepath='./zconf.h' line='435' column='1' id='type-id-23'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-24'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='32' id='type-id-25'/>
+ <qualified-type-def type-id='type-id-23' const='yes' id='type-id-26'/>
+ <pointer-type-def type-id='type-id-26' size-in-bits='32' id='type-id-27'/>
+ <function-decl name='get_crc_table' mangled-name='get_crc_table' filepath='src.d/crc32.c' line='595' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='get_crc_table'>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='crc32_z' mangled-name='crc32_z' filepath='src.d/crc32.c' line='748' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-12' name='crc' filepath='src.d/crc32.c' line='749' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='750' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/crc32.c' line='751' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32' mangled-name='crc32' filepath='src.d/crc32.c' line='1072' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32'>
+ <parameter type-id='type-id-12' name='crc' filepath='src.d/crc32.c' line='1073' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='1074' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/crc32.c' line='1075' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine64' mangled-name='crc32_combine64' filepath='src.d/crc32.c' line='1081' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1082' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1083' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1084' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine' mangled-name='crc32_combine' filepath='src.d/crc32.c' line='1093' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1094' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1095' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1096' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen64' mangled-name='crc32_combine_gen64' filepath='src.d/crc32.c' line='1102' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_gen64@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1103' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen' mangled-name='crc32_combine_gen' filepath='src.d/crc32.c' line='1112' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_gen@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1113' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_op' mangled-name='crc32_combine_op' filepath='src.d/crc32.c' line='1119' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_op@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1120' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1121' column='1'/>
+ <parameter type-id='type-id-13' name='op' filepath='src.d/crc32.c' line='1122' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-28'/>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1248' id='type-id-30'>
+ <subrange length='39' lower-bound='0' upper-bound='38' type-id='type-id-9' id='type-id-31'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='18336' id='type-id-32'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1952' id='type-id-34'>
+ <subrange length='61' lower-bound='0' upper-bound='60' type-id='type-id-9' id='type-id-35'/>
+ </array-type-def>
+ <type-decl name='int' size-in-bits='32' id='type-id-20'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-36'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <type-decl name='long int' size-in-bits='32' id='type-id-37'/>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='68' column='1' id='type-id-29'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-38' visibility='default' filepath='src.d/deflate.h' line='72' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-39' visibility='default' filepath='src.d/deflate.h' line='76' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='gz_header_s' size-in-bits='416' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='114' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='time' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='xflags' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='os' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='extra' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='extra_len' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='name' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='name_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='comment' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='comm_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='hcrc' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='done' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='127' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='internal_state' size-in-bits='46624' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='100' column='1' id='type-id-41'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='status' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_buf' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='pending_buf_size' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_out' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='pending' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='wrap' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='gzhead' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='gzindex' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='method' type-id='type-id-3' visibility='default' filepath='src.d/deflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='last_flush' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='w_size' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='w_bits' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='w_mask' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='window' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='window_size' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='prev' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='head' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='140' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='ins_h' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='142' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='hash_size' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='143' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='hash_bits' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='144' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='hash_mask' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='hash_shift' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='147' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='block_start' type-id='type-id-37' visibility='default' filepath='src.d/deflate.h' line='154' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='match_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='159' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='prev_match' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='match_available' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='161' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strstart' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='162' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='match_start' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='163' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='lookahead' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='164' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='prev_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='max_chain_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='171' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='max_lazy_match' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='good_match' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='nice_match' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='194' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='dyn_ltree' type-id='type-id-32' visibility='default' filepath='src.d/deflate.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='19520'>
+ <var-decl name='dyn_dtree' type-id='type-id-34' visibility='default' filepath='src.d/deflate.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='21472'>
+ <var-decl name='bl_tree' type-id='type-id-30' visibility='default' filepath='src.d/deflate.h' line='200' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22720'>
+ <var-decl name='l_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22816'>
+ <var-decl name='d_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22912'>
+ <var-decl name='bl_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='204' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23008'>
+ <var-decl name='bl_count' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='206' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23264'>
+ <var-decl name='heap' type-id='type-id-36' visibility='default' filepath='src.d/deflate.h' line='209' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41600'>
+ <var-decl name='heap_len' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41632'>
+ <var-decl name='heap_max' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='211' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41664'>
+ <var-decl name='depth' type-id='type-id-48' visibility='default' filepath='src.d/deflate.h' line='216' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46272'>
+ <var-decl name='sym_buf' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46304'>
+ <var-decl name='lit_bufsize' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='222' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46336'>
+ <var-decl name='sym_next' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='242' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46368'>
+ <var-decl name='sym_end' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='243' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46400'>
+ <var-decl name='opt_len' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='245' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46432'>
+ <var-decl name='static_len' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='246' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46464'>
+ <var-decl name='matches' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='247' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46496'>
+ <var-decl name='insert' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='248' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46528'>
+ <var-decl name='bi_buf' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='255' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46560'>
+ <var-decl name='bi_valid' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='259' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46592'>
+ <var-decl name='high_water' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='264' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='tree_desc_s' size-in-bits='96' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='86' column='1' id='type-id-46'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='max_code' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='stat_desc' type-id='type-id-52' visibility='default' filepath='src.d/deflate.h' line='89' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='z_stream_s' size-in-bits='448' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='86' column='1' id='type-id-53'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='avail_in' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='total_in' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='next_out' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='avail_out' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='92' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='total_out' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='msg' type-id='type-id-54' visibility='default' filepath='src.d/zlib.h' line='95' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='state' type-id='type-id-55' visibility='default' filepath='src.d/zlib.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='zalloc' type-id='type-id-56' visibility='default' filepath='src.d/zlib.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='zfree' type-id='type-id-57' visibility='default' filepath='src.d/zlib.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='opaque' type-id='type-id-58' visibility='default' filepath='src.d/zlib.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='data_type' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='adler' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='reserved' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='105' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='IPos' type-id='type-id-9' filepath='src.d/deflate.h' line='94' column='1' id='type-id-45'/>
+ <typedef-decl name='Pos' type-id='type-id-50' filepath='src.d/deflate.h' line='92' column='1' id='type-id-59'/>
+ <typedef-decl name='Posf' type-id='type-id-59' filepath='src.d/deflate.h' line='93' column='1' id='type-id-60'/>
+ <typedef-decl name='alloc_func' type-id='type-id-61' filepath='src.d/zlib.h' line='81' column='1' id='type-id-56'/>
+ <typedef-decl name='charf' type-id='type-id-28' filepath='./zconf.h' line='408' column='1' id='type-id-62'/>
+ <typedef-decl name='ct_data' type-id='type-id-29' filepath='src.d/deflate.h' line='77' column='1' id='type-id-63'/>
+ <typedef-decl name='deflate_state' type-id='type-id-41' filepath='src.d/deflate.h' line='271' column='1' id='type-id-64'/>
+ <typedef-decl name='free_func' type-id='type-id-65' filepath='src.d/zlib.h' line='82' column='1' id='type-id-57'/>
+ <typedef-decl name='gz_header' type-id='type-id-40' filepath='src.d/zlib.h' line='129' column='1' id='type-id-66'/>
+ <typedef-decl name='gz_headerp' type-id='type-id-67' filepath='src.d/zlib.h' line='131' column='1' id='type-id-43'/>
+ <typedef-decl name='uch' type-id='type-id-2' filepath='src.d/zutil.h' line='39' column='1' id='type-id-68'/>
+ <typedef-decl name='uchf' type-id='type-id-68' filepath='src.d/zutil.h' line='40' column='1' id='type-id-69'/>
+ <typedef-decl name='ulg' type-id='type-id-12' filepath='src.d/zutil.h' line='43' column='1' id='type-id-42'/>
+ <typedef-decl name='ush' type-id='type-id-70' filepath='src.d/zutil.h' line='41' column='1' id='type-id-50'/>
+ <typedef-decl name='z_stream' type-id='type-id-53' filepath='src.d/zlib.h' line='106' column='1' id='type-id-71'/>
+ <typedef-decl name='z_streamp' type-id='type-id-72' filepath='src.d/zlib.h' line='108' column='1' id='type-id-21'/>
+ <array-type-def dimensions='1' type-id='type-id-68' size-in-bits='4584' id='type-id-48'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='73' column='1' id='type-id-39'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='74' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='75' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='69' column='1' id='type-id-38'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='70' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='71' column='1'/>
+ </data-member>
+ </union-decl>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-70'/>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='256' id='type-id-47'>
+ <subrange length='16' lower-bound='0' upper-bound='15' type-id='type-id-9' id='type-id-73'/>
+ </array-type-def>
+ <pointer-type-def type-id='type-id-4' size-in-bits='32' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-60' size-in-bits='32' id='type-id-44'/>
+ <pointer-type-def type-id='type-id-28' size-in-bits='32' id='type-id-54'/>
+ <pointer-type-def type-id='type-id-62' size-in-bits='32' id='type-id-74'/>
+ <qualified-type-def type-id='type-id-28' const='yes' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-75' size-in-bits='32' id='type-id-22'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='32' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-64' size-in-bits='32' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-66' size-in-bits='32' id='type-id-67'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='32' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='32' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-78' size-in-bits='32' id='type-id-61'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='32' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-69' size-in-bits='32' id='type-id-49'/>
+ <pointer-type-def type-id='type-id-9' size-in-bits='32' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-81' size-in-bits='32' id='type-id-65'/>
+ <pointer-type-def type-id='type-id-71' size-in-bits='32' id='type-id-72'/>
+ <qualified-type-def type-id='type-id-82' const='yes' id='type-id-83'/>
+ <pointer-type-def type-id='type-id-83' size-in-bits='32' id='type-id-52'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-84'/>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-58'/>
+ <function-decl name='memcpy' filepath='/usr/arm-linux-gnueabi/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/arm-linux-gnueabi/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='deflateInit2_' mangled-name='deflateInit2_' filepath='src.d/deflate.c' line='237' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateInit2_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='239' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='240' column='1'/>
+ <parameter type-id='type-id-20' name='method' filepath='src.d/deflate.c' line='241' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/deflate.c' line='242' column='1'/>
+ <parameter type-id='type-id-20' name='memLevel' filepath='src.d/deflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/deflate.c' line='245' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/deflate.c' line='246' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetDictionary' mangled-name='deflateSetDictionary' filepath='src.d/deflate.c' line='412' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='413' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/deflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-11' name='dictLength' filepath='src.d/deflate.c' line='415' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateGetDictionary' mangled-name='deflateGetDictionary' filepath='src.d/deflate.c' line='481' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateGetDictionary@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='482' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/deflate.c' line='483' column='1'/>
+ <parameter type-id='type-id-79' name='dictLength' filepath='src.d/deflate.c' line='484' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateResetKeep' mangled-name='deflateResetKeep' filepath='src.d/deflate.c' line='503' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='504' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateReset' mangled-name='deflateReset' filepath='src.d/deflate.c' line='541' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateReset'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='542' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetHeader' mangled-name='deflateSetHeader' filepath='src.d/deflate.c' line='553' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateSetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='554' column='1'/>
+ <parameter type-id='type-id-43' name='head' filepath='src.d/deflate.c' line='555' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePending' mangled-name='deflatePending' filepath='src.d/deflate.c' line='564' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflatePending@@ZLIB_1.2.5.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='567' column='1'/>
+ <parameter type-id='type-id-80' name='pending' filepath='src.d/deflate.c' line='565' column='1'/>
+ <parameter type-id='type-id-77' name='bits' filepath='src.d/deflate.c' line='566' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePrime' mangled-name='deflatePrime' filepath='src.d/deflate.c' line='578' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflatePrime@@ZLIB_1.2.0.8'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='579' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/deflate.c' line='580' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/deflate.c' line='581' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateParams' mangled-name='deflateParams' filepath='src.d/deflate.c' line='605' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateParams'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='606' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='607' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='608' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateTune' mangled-name='deflateTune' filepath='src.d/deflate.c' line='654' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateTune@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='655' column='1'/>
+ <parameter type-id='type-id-20' name='good_length' filepath='src.d/deflate.c' line='656' column='1'/>
+ <parameter type-id='type-id-20' name='max_lazy' filepath='src.d/deflate.c' line='657' column='1'/>
+ <parameter type-id='type-id-20' name='nice_length' filepath='src.d/deflate.c' line='658' column='1'/>
+ <parameter type-id='type-id-20' name='max_chain' filepath='src.d/deflate.c' line='659' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateBound' mangled-name='deflateBound' filepath='src.d/deflate.c' line='696' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='697' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/deflate.c' line='698' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflateCopy' mangled-name='deflateCopy' filepath='src.d/deflate.c' line='1156' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateCopy'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/deflate.c' line='1157' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/deflate.c' line='1158' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <typedef-decl name='static_tree_desc' type-id='type-id-84' filepath='src.d/deflate.h' line='84' column='1' id='type-id-82'/>
+ <function-decl name='_tr_init' filepath='src.d/deflate.h' line='294' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_flush_block' filepath='src.d/deflate.h' line='296' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_flush_bits' filepath='src.d/deflate.h' line='298' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_align' filepath='src.d/deflate.h' line='299' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_stored_block' filepath='src.d/deflate.h' line='300' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='crc32' filepath='src.d/zlib.h' line='1727' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-13'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zcalloc' filepath='src.d/zutil.h' line='261' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-58'/>
+ </function-decl>
+ <function-decl name='zcfree' filepath='src.d/zutil.h' line='263' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-58'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <type-decl name='void' id='type-id-86'/>
+ <pointer-type-def type-id='type-id-86' id='type-id-85'/>
+ <function-type size-in-bits='32' id='type-id-81'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-58'/>
+ <return type-id='type-id-86'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-78'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-58'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzclose.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gzFile_s' size-in-bits='128' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='1834' column='1' id='type-id-87'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-9' visibility='default' filepath='src.d/zlib.h' line='1835' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='next' type-id='type-id-88' visibility='default' filepath='src.d/zlib.h' line='1836' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pos' type-id='type-id-7' visibility='default' filepath='src.d/zlib.h' line='1837' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gzFile' type-id='type-id-89' filepath='src.d/zlib.h' line='1302' column='1' id='type-id-90'/>
+ <pointer-type-def type-id='type-id-87' size-in-bits='32' id='type-id-89'/>
+ <function-decl name='gzclose' mangled-name='gzclose' filepath='src.d/gzclose.c' line='11' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzclose'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzclose.c' line='12' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_r' filepath='src.d/zlib.h' line='1644' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-90'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_w' filepath='src.d/zlib.h' line='1645' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-90'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='snprintf' filepath='/usr/arm-linux-gnueabi/include/stdio.h' line='385' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-54'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/arm-linux-gnueabi/include/stdlib.h' line='672' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='free' filepath='/usr/arm-linux-gnueabi/include/stdlib.h' line='687' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/arm-linux-gnueabi/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/arm-linux-gnueabi/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='gzopen' mangled-name='gzopen' filepath='src.d/gzlib.c' line='272' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzopen'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='273' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='274' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzopen64' mangled-name='gzopen64' filepath='src.d/gzlib.c' line='280' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzopen64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='281' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='282' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzdopen' mangled-name='gzdopen' filepath='src.d/gzlib.c' line='288' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzdopen'>
+ <parameter type-id='type-id-20' name='fd' filepath='src.d/gzlib.c' line='289' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='290' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzbuffer' mangled-name='gzbuffer' filepath='src.d/gzlib.c' line='318' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzbuffer@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='319' column='1'/>
+ <parameter type-id='type-id-9' name='size' filepath='src.d/gzlib.c' line='320' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzrewind' mangled-name='gzrewind' filepath='src.d/gzlib.c' line='345' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzrewind'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='346' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzseek64' mangled-name='gzseek64' filepath='src.d/gzlib.c' line='368' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzseek64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='369' column='1'/>
+ <parameter type-id='type-id-7' name='offset' filepath='src.d/gzlib.c' line='370' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='371' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzseek' mangled-name='gzseek' filepath='src.d/gzlib.c' line='445' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzseek'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='446' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='src.d/gzlib.c' line='447' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='448' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gztell64' mangled-name='gztell64' filepath='src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gztell64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='458' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gztell' mangled-name='gztell' filepath='src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gztell'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='475' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzoffset64' mangled-name='gzoffset64' filepath='src.d/gzlib.c' line='484' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzoffset64@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='485' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzoffset' mangled-name='gzoffset' filepath='src.d/gzlib.c' line='507' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzoffset@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='508' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzeof' mangled-name='gzeof' filepath='src.d/gzlib.c' line='517' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzeof'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='518' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzerror' mangled-name='gzerror' filepath='src.d/gzlib.c' line='534' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzerror'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='535' column='1'/>
+ <parameter type-id='type-id-77' name='errnum' filepath='src.d/gzlib.c' line='536' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclearerr' mangled-name='gzclearerr' filepath='src.d/gzlib.c' line='555' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzclearerr@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='556' column='1'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <type-decl name='variadic parameter type' id='type-id-91'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1344' is-struct='yes' naming-typedef-id='type-id-92' visibility='default' filepath='src.d/gzguts.h' line='170' column='1' id='type-id-93'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='172' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='mode' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='fd' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='path' type-id='type-id-54' visibility='default' filepath='src.d/gzguts.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='size' type-id='type-id-9' visibility='default' filepath='src.d/gzguts.h' line='180' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='want' type-id='type-id-9' visibility='default' filepath='src.d/gzguts.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='in' type-id='type-id-88' visibility='default' filepath='src.d/gzguts.h' line='182' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='out' type-id='type-id-88' visibility='default' filepath='src.d/gzguts.h' line='183' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='direct' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='184' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='how' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='start' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='eof' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='past' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='192' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='reset' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='193' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='skip' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='195' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='seek' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='196' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='err' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='msg' type-id='type-id-54' visibility='default' filepath='src.d/gzguts.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strm' type-id='type-id-71' visibility='default' filepath='src.d/gzguts.h' line='201' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__ssize_t' type-id='type-id-20' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='194' column='1' id='type-id-94'/>
+ <typedef-decl name='gz_state' type-id='type-id-93' filepath='src.d/gzguts.h' line='202' column='1' id='type-id-92'/>
+ <typedef-decl name='gz_statep' type-id='type-id-95' filepath='src.d/gzguts.h' line='203' column='1' id='type-id-96'/>
+ <typedef-decl name='ssize_t' type-id='type-id-94' filepath='/usr/arm-linux-gnueabi/include/sys/types.h' line='108' column='1' id='type-id-97'/>
+ <pointer-type-def type-id='type-id-92' size-in-bits='32' id='type-id-95'/>
+ <typedef-decl name='voidp' type-id='type-id-85' filepath='./zconf.h' line='416' column='1' id='type-id-98'/>
+ <function-decl name='__errno_location' filepath='/usr/arm-linux-gnueabi/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-77'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/arm-linux-gnueabi/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/arm-linux-gnueabi/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-54'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/arm-linux-gnueabi/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='read' filepath='/usr/arm-linux-gnueabi/include/unistd.h' line='371' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-97'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='src.d/gzguts.h' line='206' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='gzread' mangled-name='gzread' filepath='src.d/gzread.c' line='373' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzread'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='374' column='1'/>
+ <parameter type-id='type-id-98' name='buf' filepath='src.d/gzread.c' line='375' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='src.d/gzread.c' line='376' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfread' mangled-name='gzfread' filepath='src.d/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzfread@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-98' name='buf' filepath='src.d/gzread.c' line='410' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzread.c' line='411' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzread.c' line='412' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='413' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzgetc' mangled-name='gzgetc' filepath='src.d/gzread.c' line='445' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgetc'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='446' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgetc_' mangled-name='gzgetc_' filepath='src.d/gzread.c' line='472' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgetc_@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='473' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzungetc' mangled-name='gzungetc' filepath='src.d/gzread.c' line='479' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzungetc@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzread.c' line='480' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='481' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgets' mangled-name='gzgets' filepath='src.d/gzread.c' line='539' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgets'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='540' column='1'/>
+ <parameter type-id='type-id-54' name='buf' filepath='src.d/gzread.c' line='541' column='1'/>
+ <parameter type-id='type-id-20' name='len' filepath='src.d/gzread.c' line='542' column='1'/>
+ <return type-id='type-id-54'/>
+ </function-decl>
+ <function-decl name='gzdirect' mangled-name='gzdirect' filepath='src.d/gzread.c' line='603' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzdirect@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='604' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate' filepath='src.d/zlib.h' line='400' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateEnd' filepath='src.d/zlib.h' line='520' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset' filepath='src.d/zlib.h' line='959' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit2_' filepath='src.d/zlib.h' line='1789' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='__va_list' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-99'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='__ap' type-id='type-id-85' visibility='default'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-99' filepath='/usr/lib/gcc-cross/arm-linux-gnueabi/13/include/stdarg.h' line='40' column='1' id='type-id-100'/>
+ <typedef-decl name='va_list' type-id='type-id-100' filepath='/usr/lib/gcc-cross/arm-linux-gnueabi/13/include/stdarg.h' line='103' column='1' id='type-id-101'/>
+ <typedef-decl name='voidpc' type-id='type-id-85' filepath='./zconf.h' line='414' column='1' id='type-id-102'/>
+ <function-decl name='vsnprintf' filepath='/usr/arm-linux-gnueabi/include/stdio.h' line='389' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-54'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-100'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='memmove' filepath='/usr/arm-linux-gnueabi/include/string.h' line='47' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/arm-linux-gnueabi/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-97'/>
+ </function-decl>
+ <function-decl name='gzwrite' mangled-name='gzwrite' filepath='src.d/gzwrite.c' line='255' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzwrite'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='256' column='1'/>
+ <parameter type-id='type-id-102' name='buf' filepath='src.d/gzwrite.c' line='257' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfwrite' mangled-name='gzfwrite' filepath='src.d/gzwrite.c' line='283' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzfwrite@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-102' name='buf' filepath='src.d/gzwrite.c' line='284' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzwrite.c' line='285' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzwrite.c' line='286' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzputc' mangled-name='gzputc' filepath='src.d/gzwrite.c' line='313' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzputc'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='314' column='1'/>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzwrite.c' line='315' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzputs' mangled-name='gzputs' filepath='src.d/gzwrite.c' line='361' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzputs'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='362' column='1'/>
+ <parameter type-id='type-id-22' name='s' filepath='src.d/gzwrite.c' line='363' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzvprintf' mangled-name='gzvprintf' filepath='src.d/gzwrite.c' line='391' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzvprintf@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-101' name='va' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzprintf' mangled-name='gzprintf' filepath='src.d/gzwrite.c' line='463' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzprintf'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzflush' mangled-name='gzflush' filepath='src.d/gzwrite.c' line='565' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzflush'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='566' column='1'/>
+ <parameter type-id='type-id-20' name='flush' filepath='src.d/gzwrite.c' line='567' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzsetparams' mangled-name='gzsetparams' filepath='src.d/gzwrite.c' line='597' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzsetparams'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='598' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/gzwrite.c' line='599' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/gzwrite.c' line='600' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <enum-decl name='codetype' naming-typedef-id='type-id-103' filepath='src.d/inftrees.h' line='54' column='1' id='type-id-104'>
+ <underlying-type type-id='type-id-105'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-106' visibility='default' filepath='src.d/inftrees.h' line='24' column='1' id='type-id-107'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-70' visibility='default' filepath='src.d/inftrees.h' line='27' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-107' filepath='src.d/inftrees.h' line='28' column='1' id='type-id-106'/>
+ <typedef-decl name='codetype' type-id='type-id-104' filepath='src.d/inftrees.h' line='58' column='1' id='type-id-103'/>
+ <typedef-decl name='in_func' type-id='type-id-108' filepath='src.d/zlib.h' line='1094' column='1' id='type-id-109'/>
+ <typedef-decl name='out_func' type-id='type-id-110' filepath='src.d/zlib.h' line='1096' column='1' id='type-id-111'/>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-105'/>
+ <pointer-type-def type-id='type-id-106' size-in-bits='32' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-112' size-in-bits='32' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-114' size-in-bits='32' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='32' id='type-id-88'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='32' id='type-id-115'/>
+ <pointer-type-def type-id='type-id-116' size-in-bits='32' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='32' id='type-id-117'/>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-118'/>
+ <function-decl name='inflateBackInit_' mangled-name='inflateBackInit_' filepath='src.d/infback.c' line='28' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBackInit_@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='29' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/infback.c' line='30' column='1'/>
+ <parameter type-id='type-id-88' name='window' filepath='src.d/infback.c' line='31' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/infback.c' line='32' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/infback.c' line='33' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBack' mangled-name='inflateBack' filepath='src.d/infback.c' line='251' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBack@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='252' column='1'/>
+ <parameter type-id='type-id-109' name='in' filepath='src.d/infback.c' line='253' column='1'/>
+ <parameter type-id='type-id-85' name='in_desc' filepath='src.d/infback.c' line='254' column='1'/>
+ <parameter type-id='type-id-111' name='out' filepath='src.d/infback.c' line='255' column='1'/>
+ <parameter type-id='type-id-85' name='out_desc' filepath='src.d/infback.c' line='256' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBackEnd' mangled-name='inflateBackEnd' filepath='src.d/infback.c' line='635' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBackEnd@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='636' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate_fast' filepath='src.d/inffast.h' line='11' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='inflate_table' filepath='src.d/inftrees.h' line='60' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-103'/>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-113'/>
+ <parameter type-id='type-id-80'/>
+ <parameter type-id='type-id-117'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-114'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-88'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-116'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-115'/>
+ <return type-id='type-id-9'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-119'/>
+ <function-decl name='inflateResetKeep' mangled-name='inflateResetKeep' filepath='src.d/inflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='120' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset2' mangled-name='inflateReset2' filepath='src.d/inflate.c' line='158' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateReset2@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='159' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/inflate.c' line='160' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit_' mangled-name='inflateInit_' filepath='src.d/inflate.c' line='242' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateInit_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/inflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/inflate.c' line='245' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflatePrime' mangled-name='inflatePrime' filepath='src.d/inflate.c' line='250' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflatePrime@@ZLIB_1.2.2.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='251' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/inflate.c' line='252' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/inflate.c' line='253' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetDictionary' mangled-name='inflateGetDictionary' filepath='src.d/inflate.c' line='1318' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateGetDictionary@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1319' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-79' name='dictLength' filepath='src.d/inflate.c' line='1321' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSetDictionary' mangled-name='inflateSetDictionary' filepath='src.d/inflate.c' line='1341' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1342' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/inflate.c' line='1343' column='1'/>
+ <parameter type-id='type-id-11' name='dictLength' filepath='src.d/inflate.c' line='1344' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetHeader' mangled-name='inflateGetHeader' filepath='src.d/inflate.c' line='1376' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateGetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1377' column='1'/>
+ <parameter type-id='type-id-43' name='head' filepath='src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSync' mangled-name='inflateSync' filepath='src.d/inflate.c' line='1427' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSync'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1428' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSyncPoint' mangled-name='inflateSyncPoint' filepath='src.d/inflate.c' line='1485' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSyncPoint'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1486' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateCopy' mangled-name='inflateCopy' filepath='src.d/inflate.c' line='1495' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateCopy@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/inflate.c' line='1496' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/inflate.c' line='1497' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateUndermine' mangled-name='inflateUndermine' filepath='src.d/inflate.c' line='1542' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateUndermine@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1543' column='1'/>
+ <parameter type-id='type-id-20' name='subvert' filepath='src.d/inflate.c' line='1544' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateValidate' mangled-name='inflateValidate' filepath='src.d/inflate.c' line='1560' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateValidate@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1561' column='1'/>
+ <parameter type-id='type-id-20' name='check' filepath='src.d/inflate.c' line='1562' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateMark' mangled-name='inflateMark' filepath='src.d/inflate.c' line='1575' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateMark@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1576' column='1'/>
+ <return type-id='type-id-37'/>
+ </function-decl>
+ <function-decl name='inflateCodesUsed' mangled-name='inflateCodesUsed' filepath='src.d/inflate.c' line='1588' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateCodesUsed@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1589' column='1'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-120' size-in-bits='2048' id='type-id-121'>
+ <subrange length='256' lower-bound='0' upper-bound='255' type-id='type-id-9' id='type-id-122'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-120' size-in-bits='4096' id='type-id-123'>
+ <subrange length='512' lower-bound='0' upper-bound='511' type-id='type-id-9' id='type-id-124'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-120' size-in-bits='unknown' id='type-id-125'>
+ <subrange length='unknown' lower-bound='0' upper-bound='0' id='type-id-126'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-68' const='yes' id='type-id-120'/>
+ <var-decl name='_length_code' type-id='type-id-121' visibility='default' filepath='src.d/deflate.h' line='317' column='1'/>
+ <var-decl name='_dist_code' type-id='type-id-123' visibility='default' filepath='src.d/deflate.h' line='318' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-13' size-in-bits='32' id='type-id-127'/>
+ <function-decl name='uncompress2' mangled-name='uncompress2' filepath='src.d/uncompr.c' line='27' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='uncompress2@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='28' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='29' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='30' column='1'/>
+ <parameter type-id='type-id-127' name='sourceLen' filepath='src.d/uncompr.c' line='31' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='uncompress' mangled-name='uncompress' filepath='src.d/uncompr.c' line='86' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='uncompress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='87' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='88' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='89' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/uncompr.c' line='90' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-128' size-in-bits='320' id='type-id-129'>
+ <subrange length='10' lower-bound='0' upper-bound='9' type-id='type-id-9' id='type-id-130'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-54' const='yes' id='type-id-128'/>
+ <function-decl name='zlibVersion' mangled-name='zlibVersion' filepath='src.d/zutil.c' line='27' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibVersion'>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='zlibCompileFlags' mangled-name='zlibCompileFlags' filepath='src.d/zutil.c' line='32' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibCompileFlags@@ZLIB_1.2.0.2'>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zError' mangled-name='zError' filepath='src.d/zutil.c' line='135' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zError'>
+ <parameter type-id='type-id-20' name='err' filepath='src.d/zutil.c' line='136' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <var-decl name='z_errmsg' type-id='type-id-129' visibility='default' filepath='src.d/zutil.h' line='56' column='1'/>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-arm-unknown-linux-gnueabihf.abi b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-arm-unknown-linux-gnueabihf.abi
new file mode 100644
index 0000000000..620c5535f8
--- /dev/null
+++ b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-arm-unknown-linux-gnueabihf.abi
@@ -0,0 +1,1276 @@
+<abi-corpus version='2.2' path='btmp1/libz.so.1.2.13' architecture='elf-arm' soname='libz.so.1'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld-linux-armhf.so.3'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='adler32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compressBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen64' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_op' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateCopy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateGetDictionary' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateParams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePending' version='ZLIB_1.2.5.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePrime' version='ZLIB_1.2.0.8' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateTune' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='get_crc_table' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzbuffer' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclearerr' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_r' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_w' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdirect' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzeof' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzerror' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzflush' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfread' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfwrite' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc_' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgets' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset64' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzprintf' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputs' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzread' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzrewind' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzsetparams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzungetc' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzvprintf' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzwrite' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBack' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackEnd' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackInit_' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCodesUsed' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCopy' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetDictionary' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateMark' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflatePrime' version='ZLIB_1.2.2.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset2' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSyncPoint' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateUndermine' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateValidate' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress2' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zError' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibCompileFlags' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibVersion' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <abi-instr address-size='32' path='src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-1'/>
+ <typedef-decl name='Byte' type-id='type-id-2' filepath='./zconf.h' line='397' column='1' id='type-id-3'/>
+ <typedef-decl name='Bytef' type-id='type-id-3' filepath='./zconf.h' line='406' column='1' id='type-id-4'/>
+ <typedef-decl name='__int64_t' type-id='type-id-1' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='47' column='1' id='type-id-5'/>
+ <typedef-decl name='__off64_t' type-id='type-id-5' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='153' column='1' id='type-id-6'/>
+ <typedef-decl name='off64_t' type-id='type-id-6' filepath='/usr/arm-linux-gnueabihf/include/sys/types.h' line='92' column='1' id='type-id-7'/>
+ <typedef-decl name='off_t' type-id='type-id-6' filepath='/usr/arm-linux-gnueabihf/include/sys/types.h' line='87' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-9' filepath='/usr/lib/gcc-cross/arm-linux-gnueabihf/13/include/stddef.h' line='214' column='1' id='type-id-10'/>
+ <typedef-decl name='uInt' type-id='type-id-9' filepath='./zconf.h' line='399' column='1' id='type-id-11'/>
+ <typedef-decl name='uLong' type-id='type-id-12' filepath='./zconf.h' line='400' column='1' id='type-id-13'/>
+ <typedef-decl name='z_size_t' type-id='type-id-10' filepath='./zconf.h' line='251' column='1' id='type-id-14'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-9'/>
+ <type-decl name='unsigned long int' size-in-bits='32' id='type-id-12'/>
+ <qualified-type-def type-id='type-id-4' const='yes' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-15' size-in-bits='32' id='type-id-16'/>
+ <function-decl name='adler32_z' mangled-name='adler32_z' filepath='src.d/adler32.c' line='63' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='64' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='65' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/adler32.c' line='66' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32' mangled-name='adler32' filepath='src.d/adler32.c' line='134' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='135' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='136' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/adler32.c' line='137' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine' mangled-name='adler32_combine' filepath='src.d/adler32.c' line='172' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='173' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='174' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/adler32.c' line='175' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine64' mangled-name='adler32_combine64' filepath='src.d/adler32.c' line='180' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='181' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='182' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/adler32.c' line='183' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='uLongf' type-id='type-id-13' filepath='./zconf.h' line='411' column='1' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='32' id='type-id-18'/>
+ <function-decl name='compress2' mangled-name='compress2' filepath='src.d/compress.c' line='22' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compress2'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='23' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='24' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='26' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/compress.c' line='27' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compress' mangled-name='compress' filepath='src.d/compress.c' line='68' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='69' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='70' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='71' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='72' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compressBound' mangled-name='compressBound' filepath='src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compressBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='82' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflate' filepath='src.d/zlib.h' line='250' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateEnd' filepath='src.d/zlib.h' line='363' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateInit_' filepath='src.d/zlib.h' line='1781' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/crc32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='z_crc_t' type-id='type-id-9' filepath='./zconf.h' line='435' column='1' id='type-id-23'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-24'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='32' id='type-id-25'/>
+ <qualified-type-def type-id='type-id-23' const='yes' id='type-id-26'/>
+ <pointer-type-def type-id='type-id-26' size-in-bits='32' id='type-id-27'/>
+ <function-decl name='get_crc_table' mangled-name='get_crc_table' filepath='src.d/crc32.c' line='595' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='get_crc_table'>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='crc32_z' mangled-name='crc32_z' filepath='src.d/crc32.c' line='748' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-12' name='crc' filepath='src.d/crc32.c' line='749' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='750' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/crc32.c' line='751' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32' mangled-name='crc32' filepath='src.d/crc32.c' line='1072' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32'>
+ <parameter type-id='type-id-12' name='crc' filepath='src.d/crc32.c' line='1073' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='1074' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/crc32.c' line='1075' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine64' mangled-name='crc32_combine64' filepath='src.d/crc32.c' line='1081' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1082' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1083' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1084' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine' mangled-name='crc32_combine' filepath='src.d/crc32.c' line='1093' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1094' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1095' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1096' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen64' mangled-name='crc32_combine_gen64' filepath='src.d/crc32.c' line='1102' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_gen64@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1103' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen' mangled-name='crc32_combine_gen' filepath='src.d/crc32.c' line='1112' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_gen@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1113' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_op' mangled-name='crc32_combine_op' filepath='src.d/crc32.c' line='1119' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_op@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1120' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1121' column='1'/>
+ <parameter type-id='type-id-13' name='op' filepath='src.d/crc32.c' line='1122' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-28'/>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1248' id='type-id-30'>
+ <subrange length='39' lower-bound='0' upper-bound='38' type-id='type-id-9' id='type-id-31'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='18336' id='type-id-32'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1952' id='type-id-34'>
+ <subrange length='61' lower-bound='0' upper-bound='60' type-id='type-id-9' id='type-id-35'/>
+ </array-type-def>
+ <type-decl name='int' size-in-bits='32' id='type-id-20'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-36'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <type-decl name='long int' size-in-bits='32' id='type-id-37'/>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='68' column='1' id='type-id-29'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-38' visibility='default' filepath='src.d/deflate.h' line='72' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-39' visibility='default' filepath='src.d/deflate.h' line='76' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='gz_header_s' size-in-bits='416' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='114' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='time' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='xflags' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='os' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='extra' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='extra_len' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='name' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='name_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='comment' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='comm_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='hcrc' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='done' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='127' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='internal_state' size-in-bits='46624' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='100' column='1' id='type-id-41'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='status' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_buf' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='pending_buf_size' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_out' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='pending' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='wrap' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='gzhead' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='gzindex' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='method' type-id='type-id-3' visibility='default' filepath='src.d/deflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='last_flush' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='w_size' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='w_bits' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='w_mask' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='window' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='window_size' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='prev' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='head' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='140' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='ins_h' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='142' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='hash_size' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='143' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='hash_bits' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='144' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='hash_mask' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='hash_shift' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='147' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='block_start' type-id='type-id-37' visibility='default' filepath='src.d/deflate.h' line='154' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='match_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='159' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='prev_match' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='match_available' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='161' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strstart' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='162' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='match_start' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='163' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='lookahead' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='164' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='prev_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='max_chain_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='171' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='max_lazy_match' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='good_match' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='nice_match' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='194' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='dyn_ltree' type-id='type-id-32' visibility='default' filepath='src.d/deflate.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='19520'>
+ <var-decl name='dyn_dtree' type-id='type-id-34' visibility='default' filepath='src.d/deflate.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='21472'>
+ <var-decl name='bl_tree' type-id='type-id-30' visibility='default' filepath='src.d/deflate.h' line='200' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22720'>
+ <var-decl name='l_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22816'>
+ <var-decl name='d_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22912'>
+ <var-decl name='bl_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='204' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23008'>
+ <var-decl name='bl_count' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='206' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23264'>
+ <var-decl name='heap' type-id='type-id-36' visibility='default' filepath='src.d/deflate.h' line='209' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41600'>
+ <var-decl name='heap_len' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41632'>
+ <var-decl name='heap_max' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='211' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41664'>
+ <var-decl name='depth' type-id='type-id-48' visibility='default' filepath='src.d/deflate.h' line='216' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46272'>
+ <var-decl name='sym_buf' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46304'>
+ <var-decl name='lit_bufsize' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='222' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46336'>
+ <var-decl name='sym_next' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='242' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46368'>
+ <var-decl name='sym_end' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='243' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46400'>
+ <var-decl name='opt_len' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='245' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46432'>
+ <var-decl name='static_len' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='246' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46464'>
+ <var-decl name='matches' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='247' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46496'>
+ <var-decl name='insert' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='248' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46528'>
+ <var-decl name='bi_buf' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='255' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46560'>
+ <var-decl name='bi_valid' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='259' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46592'>
+ <var-decl name='high_water' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='264' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='tree_desc_s' size-in-bits='96' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='86' column='1' id='type-id-46'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='max_code' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='stat_desc' type-id='type-id-52' visibility='default' filepath='src.d/deflate.h' line='89' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='z_stream_s' size-in-bits='448' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='86' column='1' id='type-id-53'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='avail_in' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='total_in' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='next_out' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='avail_out' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='92' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='total_out' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='msg' type-id='type-id-54' visibility='default' filepath='src.d/zlib.h' line='95' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='state' type-id='type-id-55' visibility='default' filepath='src.d/zlib.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='zalloc' type-id='type-id-56' visibility='default' filepath='src.d/zlib.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='zfree' type-id='type-id-57' visibility='default' filepath='src.d/zlib.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='opaque' type-id='type-id-58' visibility='default' filepath='src.d/zlib.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='data_type' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='adler' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='reserved' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='105' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='IPos' type-id='type-id-9' filepath='src.d/deflate.h' line='94' column='1' id='type-id-45'/>
+ <typedef-decl name='Pos' type-id='type-id-50' filepath='src.d/deflate.h' line='92' column='1' id='type-id-59'/>
+ <typedef-decl name='Posf' type-id='type-id-59' filepath='src.d/deflate.h' line='93' column='1' id='type-id-60'/>
+ <typedef-decl name='alloc_func' type-id='type-id-61' filepath='src.d/zlib.h' line='81' column='1' id='type-id-56'/>
+ <typedef-decl name='charf' type-id='type-id-28' filepath='./zconf.h' line='408' column='1' id='type-id-62'/>
+ <typedef-decl name='ct_data' type-id='type-id-29' filepath='src.d/deflate.h' line='77' column='1' id='type-id-63'/>
+ <typedef-decl name='deflate_state' type-id='type-id-41' filepath='src.d/deflate.h' line='271' column='1' id='type-id-64'/>
+ <typedef-decl name='free_func' type-id='type-id-65' filepath='src.d/zlib.h' line='82' column='1' id='type-id-57'/>
+ <typedef-decl name='gz_header' type-id='type-id-40' filepath='src.d/zlib.h' line='129' column='1' id='type-id-66'/>
+ <typedef-decl name='gz_headerp' type-id='type-id-67' filepath='src.d/zlib.h' line='131' column='1' id='type-id-43'/>
+ <typedef-decl name='uch' type-id='type-id-2' filepath='src.d/zutil.h' line='39' column='1' id='type-id-68'/>
+ <typedef-decl name='uchf' type-id='type-id-68' filepath='src.d/zutil.h' line='40' column='1' id='type-id-69'/>
+ <typedef-decl name='ulg' type-id='type-id-12' filepath='src.d/zutil.h' line='43' column='1' id='type-id-42'/>
+ <typedef-decl name='ush' type-id='type-id-70' filepath='src.d/zutil.h' line='41' column='1' id='type-id-50'/>
+ <typedef-decl name='z_stream' type-id='type-id-53' filepath='src.d/zlib.h' line='106' column='1' id='type-id-71'/>
+ <typedef-decl name='z_streamp' type-id='type-id-72' filepath='src.d/zlib.h' line='108' column='1' id='type-id-21'/>
+ <array-type-def dimensions='1' type-id='type-id-68' size-in-bits='4584' id='type-id-48'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='73' column='1' id='type-id-39'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='74' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='75' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='69' column='1' id='type-id-38'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='70' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='71' column='1'/>
+ </data-member>
+ </union-decl>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-70'/>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='256' id='type-id-47'>
+ <subrange length='16' lower-bound='0' upper-bound='15' type-id='type-id-9' id='type-id-73'/>
+ </array-type-def>
+ <pointer-type-def type-id='type-id-4' size-in-bits='32' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-60' size-in-bits='32' id='type-id-44'/>
+ <pointer-type-def type-id='type-id-28' size-in-bits='32' id='type-id-54'/>
+ <pointer-type-def type-id='type-id-62' size-in-bits='32' id='type-id-74'/>
+ <qualified-type-def type-id='type-id-28' const='yes' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-75' size-in-bits='32' id='type-id-22'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='32' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-64' size-in-bits='32' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-66' size-in-bits='32' id='type-id-67'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='32' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='32' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-78' size-in-bits='32' id='type-id-61'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='32' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-69' size-in-bits='32' id='type-id-49'/>
+ <pointer-type-def type-id='type-id-9' size-in-bits='32' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-81' size-in-bits='32' id='type-id-65'/>
+ <pointer-type-def type-id='type-id-71' size-in-bits='32' id='type-id-72'/>
+ <qualified-type-def type-id='type-id-82' const='yes' id='type-id-83'/>
+ <pointer-type-def type-id='type-id-83' size-in-bits='32' id='type-id-52'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-84'/>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-58'/>
+ <function-decl name='memcpy' filepath='/usr/arm-linux-gnueabihf/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/arm-linux-gnueabihf/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='deflateInit2_' mangled-name='deflateInit2_' filepath='src.d/deflate.c' line='237' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateInit2_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='239' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='240' column='1'/>
+ <parameter type-id='type-id-20' name='method' filepath='src.d/deflate.c' line='241' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/deflate.c' line='242' column='1'/>
+ <parameter type-id='type-id-20' name='memLevel' filepath='src.d/deflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/deflate.c' line='245' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/deflate.c' line='246' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetDictionary' mangled-name='deflateSetDictionary' filepath='src.d/deflate.c' line='412' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='413' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/deflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-11' name='dictLength' filepath='src.d/deflate.c' line='415' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateGetDictionary' mangled-name='deflateGetDictionary' filepath='src.d/deflate.c' line='481' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateGetDictionary@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='482' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/deflate.c' line='483' column='1'/>
+ <parameter type-id='type-id-79' name='dictLength' filepath='src.d/deflate.c' line='484' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateResetKeep' mangled-name='deflateResetKeep' filepath='src.d/deflate.c' line='503' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='504' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateReset' mangled-name='deflateReset' filepath='src.d/deflate.c' line='541' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateReset'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='542' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetHeader' mangled-name='deflateSetHeader' filepath='src.d/deflate.c' line='553' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateSetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='554' column='1'/>
+ <parameter type-id='type-id-43' name='head' filepath='src.d/deflate.c' line='555' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePending' mangled-name='deflatePending' filepath='src.d/deflate.c' line='564' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflatePending@@ZLIB_1.2.5.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='567' column='1'/>
+ <parameter type-id='type-id-80' name='pending' filepath='src.d/deflate.c' line='565' column='1'/>
+ <parameter type-id='type-id-77' name='bits' filepath='src.d/deflate.c' line='566' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePrime' mangled-name='deflatePrime' filepath='src.d/deflate.c' line='578' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflatePrime@@ZLIB_1.2.0.8'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='579' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/deflate.c' line='580' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/deflate.c' line='581' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateParams' mangled-name='deflateParams' filepath='src.d/deflate.c' line='605' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateParams'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='606' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='607' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='608' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateTune' mangled-name='deflateTune' filepath='src.d/deflate.c' line='654' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateTune@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='655' column='1'/>
+ <parameter type-id='type-id-20' name='good_length' filepath='src.d/deflate.c' line='656' column='1'/>
+ <parameter type-id='type-id-20' name='max_lazy' filepath='src.d/deflate.c' line='657' column='1'/>
+ <parameter type-id='type-id-20' name='nice_length' filepath='src.d/deflate.c' line='658' column='1'/>
+ <parameter type-id='type-id-20' name='max_chain' filepath='src.d/deflate.c' line='659' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateBound' mangled-name='deflateBound' filepath='src.d/deflate.c' line='696' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='697' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/deflate.c' line='698' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflateCopy' mangled-name='deflateCopy' filepath='src.d/deflate.c' line='1156' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateCopy'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/deflate.c' line='1157' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/deflate.c' line='1158' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <typedef-decl name='static_tree_desc' type-id='type-id-84' filepath='src.d/deflate.h' line='84' column='1' id='type-id-82'/>
+ <function-decl name='_tr_init' filepath='src.d/deflate.h' line='294' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_flush_block' filepath='src.d/deflate.h' line='296' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_flush_bits' filepath='src.d/deflate.h' line='298' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_align' filepath='src.d/deflate.h' line='299' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_stored_block' filepath='src.d/deflate.h' line='300' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='crc32' filepath='src.d/zlib.h' line='1727' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-13'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zcalloc' filepath='src.d/zutil.h' line='261' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-58'/>
+ </function-decl>
+ <function-decl name='zcfree' filepath='src.d/zutil.h' line='263' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-58'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <type-decl name='void' id='type-id-86'/>
+ <pointer-type-def type-id='type-id-86' id='type-id-85'/>
+ <function-type size-in-bits='32' id='type-id-81'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-58'/>
+ <return type-id='type-id-86'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-78'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-58'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzclose.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gzFile_s' size-in-bits='128' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='1834' column='1' id='type-id-87'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-9' visibility='default' filepath='src.d/zlib.h' line='1835' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='next' type-id='type-id-88' visibility='default' filepath='src.d/zlib.h' line='1836' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pos' type-id='type-id-7' visibility='default' filepath='src.d/zlib.h' line='1837' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gzFile' type-id='type-id-89' filepath='src.d/zlib.h' line='1302' column='1' id='type-id-90'/>
+ <pointer-type-def type-id='type-id-87' size-in-bits='32' id='type-id-89'/>
+ <function-decl name='gzclose' mangled-name='gzclose' filepath='src.d/gzclose.c' line='11' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzclose'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzclose.c' line='12' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_r' filepath='src.d/zlib.h' line='1644' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-90'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_w' filepath='src.d/zlib.h' line='1645' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-90'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='snprintf' filepath='/usr/arm-linux-gnueabihf/include/stdio.h' line='385' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-54'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/arm-linux-gnueabihf/include/stdlib.h' line='672' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='free' filepath='/usr/arm-linux-gnueabihf/include/stdlib.h' line='687' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/arm-linux-gnueabihf/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/arm-linux-gnueabihf/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='gzopen' mangled-name='gzopen' filepath='src.d/gzlib.c' line='272' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzopen'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='273' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='274' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzopen64' mangled-name='gzopen64' filepath='src.d/gzlib.c' line='280' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzopen64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='281' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='282' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzdopen' mangled-name='gzdopen' filepath='src.d/gzlib.c' line='288' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzdopen'>
+ <parameter type-id='type-id-20' name='fd' filepath='src.d/gzlib.c' line='289' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='290' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzbuffer' mangled-name='gzbuffer' filepath='src.d/gzlib.c' line='318' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzbuffer@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='319' column='1'/>
+ <parameter type-id='type-id-9' name='size' filepath='src.d/gzlib.c' line='320' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzrewind' mangled-name='gzrewind' filepath='src.d/gzlib.c' line='345' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzrewind'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='346' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzseek64' mangled-name='gzseek64' filepath='src.d/gzlib.c' line='368' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzseek64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='369' column='1'/>
+ <parameter type-id='type-id-7' name='offset' filepath='src.d/gzlib.c' line='370' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='371' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzseek' mangled-name='gzseek' filepath='src.d/gzlib.c' line='445' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzseek'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='446' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='src.d/gzlib.c' line='447' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='448' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gztell64' mangled-name='gztell64' filepath='src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gztell64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='458' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gztell' mangled-name='gztell' filepath='src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gztell'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='475' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzoffset64' mangled-name='gzoffset64' filepath='src.d/gzlib.c' line='484' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzoffset64@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='485' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzoffset' mangled-name='gzoffset' filepath='src.d/gzlib.c' line='507' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzoffset@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='508' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzeof' mangled-name='gzeof' filepath='src.d/gzlib.c' line='517' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzeof'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='518' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzerror' mangled-name='gzerror' filepath='src.d/gzlib.c' line='534' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzerror'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='535' column='1'/>
+ <parameter type-id='type-id-77' name='errnum' filepath='src.d/gzlib.c' line='536' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclearerr' mangled-name='gzclearerr' filepath='src.d/gzlib.c' line='555' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzclearerr@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='556' column='1'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <type-decl name='variadic parameter type' id='type-id-91'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1344' is-struct='yes' naming-typedef-id='type-id-92' visibility='default' filepath='src.d/gzguts.h' line='170' column='1' id='type-id-93'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='172' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='mode' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='fd' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='path' type-id='type-id-54' visibility='default' filepath='src.d/gzguts.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='size' type-id='type-id-9' visibility='default' filepath='src.d/gzguts.h' line='180' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='want' type-id='type-id-9' visibility='default' filepath='src.d/gzguts.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='in' type-id='type-id-88' visibility='default' filepath='src.d/gzguts.h' line='182' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='out' type-id='type-id-88' visibility='default' filepath='src.d/gzguts.h' line='183' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='direct' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='184' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='how' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='start' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='eof' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='past' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='192' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='reset' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='193' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='skip' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='195' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='seek' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='196' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='err' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='msg' type-id='type-id-54' visibility='default' filepath='src.d/gzguts.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strm' type-id='type-id-71' visibility='default' filepath='src.d/gzguts.h' line='201' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__ssize_t' type-id='type-id-20' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='194' column='1' id='type-id-94'/>
+ <typedef-decl name='gz_state' type-id='type-id-93' filepath='src.d/gzguts.h' line='202' column='1' id='type-id-92'/>
+ <typedef-decl name='gz_statep' type-id='type-id-95' filepath='src.d/gzguts.h' line='203' column='1' id='type-id-96'/>
+ <typedef-decl name='ssize_t' type-id='type-id-94' filepath='/usr/arm-linux-gnueabihf/include/sys/types.h' line='108' column='1' id='type-id-97'/>
+ <pointer-type-def type-id='type-id-92' size-in-bits='32' id='type-id-95'/>
+ <typedef-decl name='voidp' type-id='type-id-85' filepath='./zconf.h' line='416' column='1' id='type-id-98'/>
+ <function-decl name='__errno_location' filepath='/usr/arm-linux-gnueabihf/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-77'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/arm-linux-gnueabihf/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/arm-linux-gnueabihf/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-54'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/arm-linux-gnueabihf/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='read' filepath='/usr/arm-linux-gnueabihf/include/unistd.h' line='371' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-97'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='src.d/gzguts.h' line='206' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='gzread' mangled-name='gzread' filepath='src.d/gzread.c' line='373' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzread'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='374' column='1'/>
+ <parameter type-id='type-id-98' name='buf' filepath='src.d/gzread.c' line='375' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='src.d/gzread.c' line='376' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfread' mangled-name='gzfread' filepath='src.d/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzfread@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-98' name='buf' filepath='src.d/gzread.c' line='410' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzread.c' line='411' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzread.c' line='412' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='413' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzgetc' mangled-name='gzgetc' filepath='src.d/gzread.c' line='445' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgetc'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='446' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgetc_' mangled-name='gzgetc_' filepath='src.d/gzread.c' line='472' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgetc_@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='473' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzungetc' mangled-name='gzungetc' filepath='src.d/gzread.c' line='479' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzungetc@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzread.c' line='480' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='481' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgets' mangled-name='gzgets' filepath='src.d/gzread.c' line='539' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgets'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='540' column='1'/>
+ <parameter type-id='type-id-54' name='buf' filepath='src.d/gzread.c' line='541' column='1'/>
+ <parameter type-id='type-id-20' name='len' filepath='src.d/gzread.c' line='542' column='1'/>
+ <return type-id='type-id-54'/>
+ </function-decl>
+ <function-decl name='gzdirect' mangled-name='gzdirect' filepath='src.d/gzread.c' line='603' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzdirect@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='604' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate' filepath='src.d/zlib.h' line='400' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateEnd' filepath='src.d/zlib.h' line='520' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset' filepath='src.d/zlib.h' line='959' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit2_' filepath='src.d/zlib.h' line='1789' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='__va_list' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-99'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='__ap' type-id='type-id-85' visibility='default'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-99' filepath='/usr/lib/gcc-cross/arm-linux-gnueabihf/13/include/stdarg.h' line='40' column='1' id='type-id-100'/>
+ <typedef-decl name='va_list' type-id='type-id-100' filepath='/usr/lib/gcc-cross/arm-linux-gnueabihf/13/include/stdarg.h' line='103' column='1' id='type-id-101'/>
+ <typedef-decl name='voidpc' type-id='type-id-85' filepath='./zconf.h' line='414' column='1' id='type-id-102'/>
+ <function-decl name='vsnprintf' filepath='/usr/arm-linux-gnueabihf/include/stdio.h' line='389' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-54'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-100'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='memmove' filepath='/usr/arm-linux-gnueabihf/include/string.h' line='47' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/arm-linux-gnueabihf/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-97'/>
+ </function-decl>
+ <function-decl name='gzwrite' mangled-name='gzwrite' filepath='src.d/gzwrite.c' line='255' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzwrite'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='256' column='1'/>
+ <parameter type-id='type-id-102' name='buf' filepath='src.d/gzwrite.c' line='257' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfwrite' mangled-name='gzfwrite' filepath='src.d/gzwrite.c' line='283' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzfwrite@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-102' name='buf' filepath='src.d/gzwrite.c' line='284' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzwrite.c' line='285' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzwrite.c' line='286' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzputc' mangled-name='gzputc' filepath='src.d/gzwrite.c' line='313' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzputc'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='314' column='1'/>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzwrite.c' line='315' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzputs' mangled-name='gzputs' filepath='src.d/gzwrite.c' line='361' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzputs'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='362' column='1'/>
+ <parameter type-id='type-id-22' name='s' filepath='src.d/gzwrite.c' line='363' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzvprintf' mangled-name='gzvprintf' filepath='src.d/gzwrite.c' line='391' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzvprintf@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-101' name='va' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzprintf' mangled-name='gzprintf' filepath='src.d/gzwrite.c' line='463' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzprintf'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzflush' mangled-name='gzflush' filepath='src.d/gzwrite.c' line='565' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzflush'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='566' column='1'/>
+ <parameter type-id='type-id-20' name='flush' filepath='src.d/gzwrite.c' line='567' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzsetparams' mangled-name='gzsetparams' filepath='src.d/gzwrite.c' line='597' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzsetparams'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='598' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/gzwrite.c' line='599' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/gzwrite.c' line='600' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <enum-decl name='codetype' naming-typedef-id='type-id-103' filepath='src.d/inftrees.h' line='54' column='1' id='type-id-104'>
+ <underlying-type type-id='type-id-105'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-106' visibility='default' filepath='src.d/inftrees.h' line='24' column='1' id='type-id-107'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-70' visibility='default' filepath='src.d/inftrees.h' line='27' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-107' filepath='src.d/inftrees.h' line='28' column='1' id='type-id-106'/>
+ <typedef-decl name='codetype' type-id='type-id-104' filepath='src.d/inftrees.h' line='58' column='1' id='type-id-103'/>
+ <typedef-decl name='in_func' type-id='type-id-108' filepath='src.d/zlib.h' line='1094' column='1' id='type-id-109'/>
+ <typedef-decl name='out_func' type-id='type-id-110' filepath='src.d/zlib.h' line='1096' column='1' id='type-id-111'/>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-105'/>
+ <pointer-type-def type-id='type-id-106' size-in-bits='32' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-112' size-in-bits='32' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-114' size-in-bits='32' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='32' id='type-id-88'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='32' id='type-id-115'/>
+ <pointer-type-def type-id='type-id-116' size-in-bits='32' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='32' id='type-id-117'/>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-118'/>
+ <function-decl name='inflateBackInit_' mangled-name='inflateBackInit_' filepath='src.d/infback.c' line='28' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBackInit_@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='29' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/infback.c' line='30' column='1'/>
+ <parameter type-id='type-id-88' name='window' filepath='src.d/infback.c' line='31' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/infback.c' line='32' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/infback.c' line='33' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBack' mangled-name='inflateBack' filepath='src.d/infback.c' line='251' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBack@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='252' column='1'/>
+ <parameter type-id='type-id-109' name='in' filepath='src.d/infback.c' line='253' column='1'/>
+ <parameter type-id='type-id-85' name='in_desc' filepath='src.d/infback.c' line='254' column='1'/>
+ <parameter type-id='type-id-111' name='out' filepath='src.d/infback.c' line='255' column='1'/>
+ <parameter type-id='type-id-85' name='out_desc' filepath='src.d/infback.c' line='256' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBackEnd' mangled-name='inflateBackEnd' filepath='src.d/infback.c' line='635' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBackEnd@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='636' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate_fast' filepath='src.d/inffast.h' line='11' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='inflate_table' filepath='src.d/inftrees.h' line='60' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-103'/>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-113'/>
+ <parameter type-id='type-id-80'/>
+ <parameter type-id='type-id-117'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-114'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-88'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-116'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-115'/>
+ <return type-id='type-id-9'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-119'/>
+ <function-decl name='inflateResetKeep' mangled-name='inflateResetKeep' filepath='src.d/inflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='120' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset2' mangled-name='inflateReset2' filepath='src.d/inflate.c' line='158' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateReset2@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='159' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/inflate.c' line='160' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit_' mangled-name='inflateInit_' filepath='src.d/inflate.c' line='242' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateInit_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/inflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/inflate.c' line='245' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflatePrime' mangled-name='inflatePrime' filepath='src.d/inflate.c' line='250' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflatePrime@@ZLIB_1.2.2.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='251' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/inflate.c' line='252' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/inflate.c' line='253' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetDictionary' mangled-name='inflateGetDictionary' filepath='src.d/inflate.c' line='1318' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateGetDictionary@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1319' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-79' name='dictLength' filepath='src.d/inflate.c' line='1321' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSetDictionary' mangled-name='inflateSetDictionary' filepath='src.d/inflate.c' line='1341' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1342' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/inflate.c' line='1343' column='1'/>
+ <parameter type-id='type-id-11' name='dictLength' filepath='src.d/inflate.c' line='1344' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetHeader' mangled-name='inflateGetHeader' filepath='src.d/inflate.c' line='1376' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateGetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1377' column='1'/>
+ <parameter type-id='type-id-43' name='head' filepath='src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSync' mangled-name='inflateSync' filepath='src.d/inflate.c' line='1427' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSync'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1428' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSyncPoint' mangled-name='inflateSyncPoint' filepath='src.d/inflate.c' line='1485' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSyncPoint'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1486' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateCopy' mangled-name='inflateCopy' filepath='src.d/inflate.c' line='1495' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateCopy@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/inflate.c' line='1496' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/inflate.c' line='1497' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateUndermine' mangled-name='inflateUndermine' filepath='src.d/inflate.c' line='1542' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateUndermine@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1543' column='1'/>
+ <parameter type-id='type-id-20' name='subvert' filepath='src.d/inflate.c' line='1544' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateValidate' mangled-name='inflateValidate' filepath='src.d/inflate.c' line='1560' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateValidate@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1561' column='1'/>
+ <parameter type-id='type-id-20' name='check' filepath='src.d/inflate.c' line='1562' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateMark' mangled-name='inflateMark' filepath='src.d/inflate.c' line='1575' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateMark@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1576' column='1'/>
+ <return type-id='type-id-37'/>
+ </function-decl>
+ <function-decl name='inflateCodesUsed' mangled-name='inflateCodesUsed' filepath='src.d/inflate.c' line='1588' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateCodesUsed@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1589' column='1'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-120' size-in-bits='2048' id='type-id-121'>
+ <subrange length='256' lower-bound='0' upper-bound='255' type-id='type-id-9' id='type-id-122'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-120' size-in-bits='4096' id='type-id-123'>
+ <subrange length='512' lower-bound='0' upper-bound='511' type-id='type-id-9' id='type-id-124'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-120' size-in-bits='unknown' id='type-id-125'>
+ <subrange length='unknown' lower-bound='0' upper-bound='0' id='type-id-126'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-68' const='yes' id='type-id-120'/>
+ <var-decl name='_length_code' type-id='type-id-121' visibility='default' filepath='src.d/deflate.h' line='317' column='1'/>
+ <var-decl name='_dist_code' type-id='type-id-123' visibility='default' filepath='src.d/deflate.h' line='318' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-13' size-in-bits='32' id='type-id-127'/>
+ <function-decl name='uncompress2' mangled-name='uncompress2' filepath='src.d/uncompr.c' line='27' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='uncompress2@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='28' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='29' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='30' column='1'/>
+ <parameter type-id='type-id-127' name='sourceLen' filepath='src.d/uncompr.c' line='31' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='uncompress' mangled-name='uncompress' filepath='src.d/uncompr.c' line='86' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='uncompress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='87' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='88' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='89' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/uncompr.c' line='90' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-128' size-in-bits='320' id='type-id-129'>
+ <subrange length='10' lower-bound='0' upper-bound='9' type-id='type-id-9' id='type-id-130'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-54' const='yes' id='type-id-128'/>
+ <function-decl name='zlibVersion' mangled-name='zlibVersion' filepath='src.d/zutil.c' line='27' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibVersion'>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='zlibCompileFlags' mangled-name='zlibCompileFlags' filepath='src.d/zutil.c' line='32' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibCompileFlags@@ZLIB_1.2.0.2'>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zError' mangled-name='zError' filepath='src.d/zutil.c' line='135' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zError'>
+ <parameter type-id='type-id-20' name='err' filepath='src.d/zutil.c' line='136' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <var-decl name='z_errmsg' type-id='type-id-129' visibility='default' filepath='src.d/zutil.h' line='56' column='1'/>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-mips-unknown-linux-gnu.abi b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-mips-unknown-linux-gnu.abi
new file mode 100644
index 0000000000..2ab253c373
--- /dev/null
+++ b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-mips-unknown-linux-gnu.abi
@@ -0,0 +1,1271 @@
+<abi-corpus version='2.2' path='btmp1/libz.so.1.2.13' architecture='elf-mips-r3000-be' soname='libz.so.1'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld.so.1'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='adler32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compressBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen64' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_op' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateCopy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateGetDictionary' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateParams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePending' version='ZLIB_1.2.5.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePrime' version='ZLIB_1.2.0.8' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateTune' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='get_crc_table' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzbuffer' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclearerr' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_r' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_w' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdirect' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzeof' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzerror' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzflush' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfread' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfwrite' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc_' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgets' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset64' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzprintf' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputs' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzread' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzrewind' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzsetparams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzungetc' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzvprintf' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzwrite' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBack' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackEnd' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackInit_' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCodesUsed' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCopy' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetDictionary' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateMark' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflatePrime' version='ZLIB_1.2.2.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset2' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSyncPoint' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateUndermine' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateValidate' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress2' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zError' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibCompileFlags' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibVersion' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <abi-instr address-size='32' path='src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-1'/>
+ <typedef-decl name='Byte' type-id='type-id-2' filepath='./zconf.h' line='397' column='1' id='type-id-3'/>
+ <typedef-decl name='Bytef' type-id='type-id-3' filepath='./zconf.h' line='406' column='1' id='type-id-4'/>
+ <typedef-decl name='__int64_t' type-id='type-id-1' filepath='/usr/mips-linux-gnu/include/bits/types.h' line='47' column='1' id='type-id-5'/>
+ <typedef-decl name='__off64_t' type-id='type-id-5' filepath='/usr/mips-linux-gnu/include/bits/types.h' line='153' column='1' id='type-id-6'/>
+ <typedef-decl name='off64_t' type-id='type-id-6' filepath='/usr/mips-linux-gnu/include/sys/types.h' line='92' column='1' id='type-id-7'/>
+ <typedef-decl name='off_t' type-id='type-id-6' filepath='/usr/mips-linux-gnu/include/sys/types.h' line='87' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-9' filepath='/usr/lib/gcc-cross/mips-linux-gnu/12/include/stddef.h' line='214' column='1' id='type-id-10'/>
+ <typedef-decl name='uInt' type-id='type-id-9' filepath='./zconf.h' line='399' column='1' id='type-id-11'/>
+ <typedef-decl name='uLong' type-id='type-id-12' filepath='./zconf.h' line='400' column='1' id='type-id-13'/>
+ <typedef-decl name='z_size_t' type-id='type-id-10' filepath='./zconf.h' line='251' column='1' id='type-id-14'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-9'/>
+ <type-decl name='unsigned long int' size-in-bits='32' id='type-id-12'/>
+ <qualified-type-def type-id='type-id-4' const='yes' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-15' size-in-bits='32' id='type-id-16'/>
+ <function-decl name='adler32_z' mangled-name='adler32_z' filepath='src.d/adler32.c' line='63' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='64' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='65' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/adler32.c' line='66' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32' mangled-name='adler32' filepath='src.d/adler32.c' line='134' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='135' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='136' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/adler32.c' line='137' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine' mangled-name='adler32_combine' filepath='src.d/adler32.c' line='172' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='173' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='174' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/adler32.c' line='175' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine64' mangled-name='adler32_combine64' filepath='src.d/adler32.c' line='180' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='181' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='182' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/adler32.c' line='183' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='uLongf' type-id='type-id-13' filepath='./zconf.h' line='411' column='1' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='32' id='type-id-18'/>
+ <function-decl name='compress2' mangled-name='compress2' filepath='src.d/compress.c' line='22' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compress2'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='23' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='24' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='26' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/compress.c' line='27' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compress' mangled-name='compress' filepath='src.d/compress.c' line='68' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='69' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='70' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='71' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='72' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compressBound' mangled-name='compressBound' filepath='src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compressBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='82' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflate' filepath='src.d/zlib.h' line='250' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateEnd' filepath='src.d/zlib.h' line='363' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateInit_' filepath='src.d/zlib.h' line='1781' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/crc32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='z_crc_t' type-id='type-id-9' filepath='./zconf.h' line='435' column='1' id='type-id-23'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-24'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='32' id='type-id-25'/>
+ <qualified-type-def type-id='type-id-23' const='yes' id='type-id-26'/>
+ <pointer-type-def type-id='type-id-26' size-in-bits='32' id='type-id-27'/>
+ <function-decl name='get_crc_table' mangled-name='get_crc_table' filepath='src.d/crc32.c' line='595' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='get_crc_table'>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='crc32_z' mangled-name='crc32_z' filepath='src.d/crc32.c' line='748' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-12' name='crc' filepath='src.d/crc32.c' line='749' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='750' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/crc32.c' line='751' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32' mangled-name='crc32' filepath='src.d/crc32.c' line='1072' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32'>
+ <parameter type-id='type-id-12' name='crc' filepath='src.d/crc32.c' line='1073' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='1074' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/crc32.c' line='1075' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine64' mangled-name='crc32_combine64' filepath='src.d/crc32.c' line='1081' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1082' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1083' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1084' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine' mangled-name='crc32_combine' filepath='src.d/crc32.c' line='1093' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1094' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1095' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1096' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen64' mangled-name='crc32_combine_gen64' filepath='src.d/crc32.c' line='1102' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_gen64@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1103' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen' mangled-name='crc32_combine_gen' filepath='src.d/crc32.c' line='1112' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_gen@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1113' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_op' mangled-name='crc32_combine_op' filepath='src.d/crc32.c' line='1119' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_op@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1120' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1121' column='1'/>
+ <parameter type-id='type-id-13' name='op' filepath='src.d/crc32.c' line='1122' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-28'/>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1248' id='type-id-30'>
+ <subrange length='39' lower-bound='0' upper-bound='38' type-id='type-id-9' id='type-id-31'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='18336' id='type-id-32'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1952' id='type-id-34'>
+ <subrange length='61' lower-bound='0' upper-bound='60' type-id='type-id-9' id='type-id-35'/>
+ </array-type-def>
+ <type-decl name='int' size-in-bits='32' id='type-id-20'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-36'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <type-decl name='long int' size-in-bits='32' id='type-id-37'/>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='68' column='1' id='type-id-29'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-38' visibility='default' filepath='src.d/deflate.h' line='72' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-39' visibility='default' filepath='src.d/deflate.h' line='76' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='gz_header_s' size-in-bits='416' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='114' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='time' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='xflags' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='os' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='extra' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='extra_len' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='name' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='name_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='comment' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='comm_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='hcrc' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='done' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='127' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='internal_state' size-in-bits='46624' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='100' column='1' id='type-id-41'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='status' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_buf' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='pending_buf_size' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_out' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='pending' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='wrap' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='gzhead' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='gzindex' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='method' type-id='type-id-3' visibility='default' filepath='src.d/deflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='last_flush' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='w_size' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='w_bits' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='w_mask' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='window' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='window_size' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='prev' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='head' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='140' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='ins_h' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='142' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='hash_size' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='143' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='hash_bits' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='144' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='hash_mask' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='hash_shift' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='147' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='block_start' type-id='type-id-37' visibility='default' filepath='src.d/deflate.h' line='154' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='match_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='159' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='prev_match' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='match_available' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='161' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strstart' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='162' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='match_start' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='163' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='lookahead' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='164' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='prev_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='max_chain_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='171' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='max_lazy_match' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='good_match' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='nice_match' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='194' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='dyn_ltree' type-id='type-id-32' visibility='default' filepath='src.d/deflate.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='19520'>
+ <var-decl name='dyn_dtree' type-id='type-id-34' visibility='default' filepath='src.d/deflate.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='21472'>
+ <var-decl name='bl_tree' type-id='type-id-30' visibility='default' filepath='src.d/deflate.h' line='200' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22720'>
+ <var-decl name='l_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22816'>
+ <var-decl name='d_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22912'>
+ <var-decl name='bl_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='204' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23008'>
+ <var-decl name='bl_count' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='206' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23264'>
+ <var-decl name='heap' type-id='type-id-36' visibility='default' filepath='src.d/deflate.h' line='209' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41600'>
+ <var-decl name='heap_len' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41632'>
+ <var-decl name='heap_max' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='211' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41664'>
+ <var-decl name='depth' type-id='type-id-48' visibility='default' filepath='src.d/deflate.h' line='216' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46272'>
+ <var-decl name='sym_buf' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46304'>
+ <var-decl name='lit_bufsize' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='222' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46336'>
+ <var-decl name='sym_next' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='242' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46368'>
+ <var-decl name='sym_end' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='243' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46400'>
+ <var-decl name='opt_len' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='245' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46432'>
+ <var-decl name='static_len' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='246' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46464'>
+ <var-decl name='matches' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='247' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46496'>
+ <var-decl name='insert' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='248' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46528'>
+ <var-decl name='bi_buf' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='255' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46560'>
+ <var-decl name='bi_valid' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='259' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46592'>
+ <var-decl name='high_water' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='264' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='tree_desc_s' size-in-bits='96' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='86' column='1' id='type-id-46'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='max_code' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='stat_desc' type-id='type-id-52' visibility='default' filepath='src.d/deflate.h' line='89' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='z_stream_s' size-in-bits='448' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='86' column='1' id='type-id-53'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='avail_in' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='total_in' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='next_out' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='avail_out' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='92' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='total_out' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='msg' type-id='type-id-54' visibility='default' filepath='src.d/zlib.h' line='95' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='state' type-id='type-id-55' visibility='default' filepath='src.d/zlib.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='zalloc' type-id='type-id-56' visibility='default' filepath='src.d/zlib.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='zfree' type-id='type-id-57' visibility='default' filepath='src.d/zlib.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='opaque' type-id='type-id-58' visibility='default' filepath='src.d/zlib.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='data_type' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='adler' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='reserved' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='105' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='IPos' type-id='type-id-9' filepath='src.d/deflate.h' line='94' column='1' id='type-id-45'/>
+ <typedef-decl name='Pos' type-id='type-id-50' filepath='src.d/deflate.h' line='92' column='1' id='type-id-59'/>
+ <typedef-decl name='Posf' type-id='type-id-59' filepath='src.d/deflate.h' line='93' column='1' id='type-id-60'/>
+ <typedef-decl name='alloc_func' type-id='type-id-61' filepath='src.d/zlib.h' line='81' column='1' id='type-id-56'/>
+ <typedef-decl name='charf' type-id='type-id-28' filepath='./zconf.h' line='408' column='1' id='type-id-62'/>
+ <typedef-decl name='ct_data' type-id='type-id-29' filepath='src.d/deflate.h' line='77' column='1' id='type-id-63'/>
+ <typedef-decl name='deflate_state' type-id='type-id-41' filepath='src.d/deflate.h' line='271' column='1' id='type-id-64'/>
+ <typedef-decl name='free_func' type-id='type-id-65' filepath='src.d/zlib.h' line='82' column='1' id='type-id-57'/>
+ <typedef-decl name='gz_header' type-id='type-id-40' filepath='src.d/zlib.h' line='129' column='1' id='type-id-66'/>
+ <typedef-decl name='gz_headerp' type-id='type-id-67' filepath='src.d/zlib.h' line='131' column='1' id='type-id-43'/>
+ <typedef-decl name='uch' type-id='type-id-2' filepath='src.d/zutil.h' line='39' column='1' id='type-id-68'/>
+ <typedef-decl name='uchf' type-id='type-id-68' filepath='src.d/zutil.h' line='40' column='1' id='type-id-69'/>
+ <typedef-decl name='ulg' type-id='type-id-12' filepath='src.d/zutil.h' line='43' column='1' id='type-id-42'/>
+ <typedef-decl name='ush' type-id='type-id-70' filepath='src.d/zutil.h' line='41' column='1' id='type-id-50'/>
+ <typedef-decl name='z_stream' type-id='type-id-53' filepath='src.d/zlib.h' line='106' column='1' id='type-id-71'/>
+ <typedef-decl name='z_streamp' type-id='type-id-72' filepath='src.d/zlib.h' line='108' column='1' id='type-id-21'/>
+ <array-type-def dimensions='1' type-id='type-id-68' size-in-bits='4584' id='type-id-48'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='73' column='1' id='type-id-39'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='74' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='75' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='69' column='1' id='type-id-38'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='70' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='71' column='1'/>
+ </data-member>
+ </union-decl>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-70'/>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='256' id='type-id-47'>
+ <subrange length='16' lower-bound='0' upper-bound='15' type-id='type-id-9' id='type-id-73'/>
+ </array-type-def>
+ <pointer-type-def type-id='type-id-4' size-in-bits='32' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-60' size-in-bits='32' id='type-id-44'/>
+ <pointer-type-def type-id='type-id-28' size-in-bits='32' id='type-id-54'/>
+ <pointer-type-def type-id='type-id-62' size-in-bits='32' id='type-id-74'/>
+ <qualified-type-def type-id='type-id-28' const='yes' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-75' size-in-bits='32' id='type-id-22'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='32' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-64' size-in-bits='32' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-66' size-in-bits='32' id='type-id-67'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='32' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='32' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-78' size-in-bits='32' id='type-id-61'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='32' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-69' size-in-bits='32' id='type-id-49'/>
+ <pointer-type-def type-id='type-id-9' size-in-bits='32' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-81' size-in-bits='32' id='type-id-65'/>
+ <pointer-type-def type-id='type-id-71' size-in-bits='32' id='type-id-72'/>
+ <qualified-type-def type-id='type-id-82' const='yes' id='type-id-83'/>
+ <pointer-type-def type-id='type-id-83' size-in-bits='32' id='type-id-52'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-84'/>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-58'/>
+ <function-decl name='memcpy' filepath='/usr/mips-linux-gnu/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/mips-linux-gnu/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='deflateInit2_' mangled-name='deflateInit2_' filepath='src.d/deflate.c' line='237' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateInit2_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='239' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='240' column='1'/>
+ <parameter type-id='type-id-20' name='method' filepath='src.d/deflate.c' line='241' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/deflate.c' line='242' column='1'/>
+ <parameter type-id='type-id-20' name='memLevel' filepath='src.d/deflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/deflate.c' line='245' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/deflate.c' line='246' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetDictionary' mangled-name='deflateSetDictionary' filepath='src.d/deflate.c' line='412' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='413' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/deflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-11' name='dictLength' filepath='src.d/deflate.c' line='415' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateGetDictionary' mangled-name='deflateGetDictionary' filepath='src.d/deflate.c' line='481' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateGetDictionary@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='482' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/deflate.c' line='483' column='1'/>
+ <parameter type-id='type-id-79' name='dictLength' filepath='src.d/deflate.c' line='484' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateResetKeep' mangled-name='deflateResetKeep' filepath='src.d/deflate.c' line='503' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='504' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateReset' mangled-name='deflateReset' filepath='src.d/deflate.c' line='541' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateReset'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='542' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetHeader' mangled-name='deflateSetHeader' filepath='src.d/deflate.c' line='553' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateSetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='554' column='1'/>
+ <parameter type-id='type-id-43' name='head' filepath='src.d/deflate.c' line='555' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePending' mangled-name='deflatePending' filepath='src.d/deflate.c' line='564' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflatePending@@ZLIB_1.2.5.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='567' column='1'/>
+ <parameter type-id='type-id-80' name='pending' filepath='src.d/deflate.c' line='565' column='1'/>
+ <parameter type-id='type-id-77' name='bits' filepath='src.d/deflate.c' line='566' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePrime' mangled-name='deflatePrime' filepath='src.d/deflate.c' line='578' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflatePrime@@ZLIB_1.2.0.8'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='579' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/deflate.c' line='580' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/deflate.c' line='581' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateParams' mangled-name='deflateParams' filepath='src.d/deflate.c' line='605' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateParams'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='606' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='607' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='608' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateTune' mangled-name='deflateTune' filepath='src.d/deflate.c' line='654' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateTune@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='655' column='1'/>
+ <parameter type-id='type-id-20' name='good_length' filepath='src.d/deflate.c' line='656' column='1'/>
+ <parameter type-id='type-id-20' name='max_lazy' filepath='src.d/deflate.c' line='657' column='1'/>
+ <parameter type-id='type-id-20' name='nice_length' filepath='src.d/deflate.c' line='658' column='1'/>
+ <parameter type-id='type-id-20' name='max_chain' filepath='src.d/deflate.c' line='659' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateBound' mangled-name='deflateBound' filepath='src.d/deflate.c' line='696' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='697' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/deflate.c' line='698' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflateCopy' mangled-name='deflateCopy' filepath='src.d/deflate.c' line='1156' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateCopy'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/deflate.c' line='1157' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/deflate.c' line='1158' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <typedef-decl name='static_tree_desc' type-id='type-id-84' filepath='src.d/deflate.h' line='84' column='1' id='type-id-82'/>
+ <function-decl name='_tr_init' filepath='src.d/deflate.h' line='294' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_flush_block' filepath='src.d/deflate.h' line='296' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_flush_bits' filepath='src.d/deflate.h' line='298' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_align' filepath='src.d/deflate.h' line='299' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_stored_block' filepath='src.d/deflate.h' line='300' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='crc32' filepath='src.d/zlib.h' line='1727' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-13'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zcalloc' filepath='src.d/zutil.h' line='261' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-58'/>
+ </function-decl>
+ <function-decl name='zcfree' filepath='src.d/zutil.h' line='263' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-58'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <type-decl name='void' id='type-id-86'/>
+ <pointer-type-def type-id='type-id-86' id='type-id-85'/>
+ <function-type size-in-bits='32' id='type-id-81'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-58'/>
+ <return type-id='type-id-86'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-78'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-58'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzclose.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gzFile_s' size-in-bits='128' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='1834' column='1' id='type-id-87'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-9' visibility='default' filepath='src.d/zlib.h' line='1835' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='next' type-id='type-id-88' visibility='default' filepath='src.d/zlib.h' line='1836' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pos' type-id='type-id-7' visibility='default' filepath='src.d/zlib.h' line='1837' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gzFile' type-id='type-id-89' filepath='src.d/zlib.h' line='1302' column='1' id='type-id-90'/>
+ <pointer-type-def type-id='type-id-87' size-in-bits='32' id='type-id-89'/>
+ <function-decl name='gzclose' mangled-name='gzclose' filepath='src.d/gzclose.c' line='11' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzclose'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzclose.c' line='12' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_r' filepath='src.d/zlib.h' line='1644' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-90'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_w' filepath='src.d/zlib.h' line='1645' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-90'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='snprintf' filepath='/usr/mips-linux-gnu/include/stdio.h' line='385' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-54'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/mips-linux-gnu/include/stdlib.h' line='672' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='free' filepath='/usr/mips-linux-gnu/include/stdlib.h' line='687' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/mips-linux-gnu/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/mips-linux-gnu/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='gzopen' mangled-name='gzopen' filepath='src.d/gzlib.c' line='272' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzopen'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='273' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='274' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzopen64' mangled-name='gzopen64' filepath='src.d/gzlib.c' line='280' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzopen64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='281' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='282' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzdopen' mangled-name='gzdopen' filepath='src.d/gzlib.c' line='288' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzdopen'>
+ <parameter type-id='type-id-20' name='fd' filepath='src.d/gzlib.c' line='289' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='290' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzbuffer' mangled-name='gzbuffer' filepath='src.d/gzlib.c' line='318' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzbuffer@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='319' column='1'/>
+ <parameter type-id='type-id-9' name='size' filepath='src.d/gzlib.c' line='320' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzrewind' mangled-name='gzrewind' filepath='src.d/gzlib.c' line='345' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzrewind'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='346' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzseek64' mangled-name='gzseek64' filepath='src.d/gzlib.c' line='368' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzseek64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='369' column='1'/>
+ <parameter type-id='type-id-7' name='offset' filepath='src.d/gzlib.c' line='370' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='371' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzseek' mangled-name='gzseek' filepath='src.d/gzlib.c' line='445' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzseek'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='446' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='src.d/gzlib.c' line='447' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='448' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gztell64' mangled-name='gztell64' filepath='src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gztell64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='458' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gztell' mangled-name='gztell' filepath='src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gztell'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='475' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzoffset64' mangled-name='gzoffset64' filepath='src.d/gzlib.c' line='484' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzoffset64@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='485' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzoffset' mangled-name='gzoffset' filepath='src.d/gzlib.c' line='507' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzoffset@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='508' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzeof' mangled-name='gzeof' filepath='src.d/gzlib.c' line='517' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzeof'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='518' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzerror' mangled-name='gzerror' filepath='src.d/gzlib.c' line='534' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzerror'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='535' column='1'/>
+ <parameter type-id='type-id-77' name='errnum' filepath='src.d/gzlib.c' line='536' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclearerr' mangled-name='gzclearerr' filepath='src.d/gzlib.c' line='555' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzclearerr@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='556' column='1'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <type-decl name='variadic parameter type' id='type-id-91'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1344' is-struct='yes' naming-typedef-id='type-id-92' visibility='default' filepath='src.d/gzguts.h' line='170' column='1' id='type-id-93'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='172' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='mode' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='fd' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='path' type-id='type-id-54' visibility='default' filepath='src.d/gzguts.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='size' type-id='type-id-9' visibility='default' filepath='src.d/gzguts.h' line='180' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='want' type-id='type-id-9' visibility='default' filepath='src.d/gzguts.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='in' type-id='type-id-88' visibility='default' filepath='src.d/gzguts.h' line='182' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='out' type-id='type-id-88' visibility='default' filepath='src.d/gzguts.h' line='183' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='direct' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='184' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='how' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='start' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='eof' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='past' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='192' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='reset' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='193' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='skip' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='195' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='seek' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='196' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='err' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='msg' type-id='type-id-54' visibility='default' filepath='src.d/gzguts.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strm' type-id='type-id-71' visibility='default' filepath='src.d/gzguts.h' line='201' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__ssize_t' type-id='type-id-20' filepath='/usr/mips-linux-gnu/include/bits/types.h' line='194' column='1' id='type-id-94'/>
+ <typedef-decl name='gz_state' type-id='type-id-93' filepath='src.d/gzguts.h' line='202' column='1' id='type-id-92'/>
+ <typedef-decl name='gz_statep' type-id='type-id-95' filepath='src.d/gzguts.h' line='203' column='1' id='type-id-96'/>
+ <typedef-decl name='ssize_t' type-id='type-id-94' filepath='/usr/mips-linux-gnu/include/sys/types.h' line='108' column='1' id='type-id-97'/>
+ <pointer-type-def type-id='type-id-92' size-in-bits='32' id='type-id-95'/>
+ <typedef-decl name='voidp' type-id='type-id-85' filepath='./zconf.h' line='416' column='1' id='type-id-98'/>
+ <function-decl name='__errno_location' filepath='/usr/mips-linux-gnu/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-77'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/mips-linux-gnu/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/mips-linux-gnu/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-54'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/mips-linux-gnu/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='read' filepath='/usr/mips-linux-gnu/include/unistd.h' line='371' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-97'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='src.d/gzguts.h' line='206' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='gzread' mangled-name='gzread' filepath='src.d/gzread.c' line='373' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzread'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='374' column='1'/>
+ <parameter type-id='type-id-98' name='buf' filepath='src.d/gzread.c' line='375' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='src.d/gzread.c' line='376' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfread' mangled-name='gzfread' filepath='src.d/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzfread@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-98' name='buf' filepath='src.d/gzread.c' line='410' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzread.c' line='411' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzread.c' line='412' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='413' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzgetc' mangled-name='gzgetc' filepath='src.d/gzread.c' line='445' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgetc'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='446' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgetc_' mangled-name='gzgetc_' filepath='src.d/gzread.c' line='472' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgetc_@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='473' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzungetc' mangled-name='gzungetc' filepath='src.d/gzread.c' line='479' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzungetc@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzread.c' line='480' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='481' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgets' mangled-name='gzgets' filepath='src.d/gzread.c' line='539' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgets'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='540' column='1'/>
+ <parameter type-id='type-id-54' name='buf' filepath='src.d/gzread.c' line='541' column='1'/>
+ <parameter type-id='type-id-20' name='len' filepath='src.d/gzread.c' line='542' column='1'/>
+ <return type-id='type-id-54'/>
+ </function-decl>
+ <function-decl name='gzdirect' mangled-name='gzdirect' filepath='src.d/gzread.c' line='603' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzdirect@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='604' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate' filepath='src.d/zlib.h' line='400' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateEnd' filepath='src.d/zlib.h' line='520' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset' filepath='src.d/zlib.h' line='959' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit2_' filepath='src.d/zlib.h' line='1789' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpc' type-id='type-id-85' filepath='./zconf.h' line='414' column='1' id='type-id-99'/>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-85' filepath='/usr/lib/gcc-cross/mips-linux-gnu/12/include/stdarg.h' line='40' column='1' id='type-id-100'/>
+ <typedef-decl name='va_list' type-id='type-id-100' filepath='/usr/lib/gcc-cross/mips-linux-gnu/12/include/stdarg.h' line='99' column='1' id='type-id-101'/>
+ <function-decl name='vsnprintf' filepath='/usr/mips-linux-gnu/include/stdio.h' line='389' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-54'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-85'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='memmove' filepath='/usr/mips-linux-gnu/include/string.h' line='47' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/mips-linux-gnu/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-97'/>
+ </function-decl>
+ <function-decl name='gzwrite' mangled-name='gzwrite' filepath='src.d/gzwrite.c' line='255' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzwrite'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='256' column='1'/>
+ <parameter type-id='type-id-99' name='buf' filepath='src.d/gzwrite.c' line='257' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfwrite' mangled-name='gzfwrite' filepath='src.d/gzwrite.c' line='283' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzfwrite@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-99' name='buf' filepath='src.d/gzwrite.c' line='284' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzwrite.c' line='285' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzwrite.c' line='286' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzputc' mangled-name='gzputc' filepath='src.d/gzwrite.c' line='313' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzputc'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='314' column='1'/>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzwrite.c' line='315' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzputs' mangled-name='gzputs' filepath='src.d/gzwrite.c' line='361' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzputs'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='362' column='1'/>
+ <parameter type-id='type-id-22' name='s' filepath='src.d/gzwrite.c' line='363' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzvprintf' mangled-name='gzvprintf' filepath='src.d/gzwrite.c' line='391' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzvprintf@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-101' name='va' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzprintf' mangled-name='gzprintf' filepath='src.d/gzwrite.c' line='463' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzprintf'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzflush' mangled-name='gzflush' filepath='src.d/gzwrite.c' line='565' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzflush'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='566' column='1'/>
+ <parameter type-id='type-id-20' name='flush' filepath='src.d/gzwrite.c' line='567' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzsetparams' mangled-name='gzsetparams' filepath='src.d/gzwrite.c' line='597' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzsetparams'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='598' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/gzwrite.c' line='599' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/gzwrite.c' line='600' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <enum-decl name='codetype' naming-typedef-id='type-id-102' filepath='src.d/inftrees.h' line='54' column='1' id='type-id-103'>
+ <underlying-type type-id='type-id-104'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-105' visibility='default' filepath='src.d/inftrees.h' line='24' column='1' id='type-id-106'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-70' visibility='default' filepath='src.d/inftrees.h' line='27' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-106' filepath='src.d/inftrees.h' line='28' column='1' id='type-id-105'/>
+ <typedef-decl name='codetype' type-id='type-id-103' filepath='src.d/inftrees.h' line='58' column='1' id='type-id-102'/>
+ <typedef-decl name='in_func' type-id='type-id-107' filepath='src.d/zlib.h' line='1094' column='1' id='type-id-108'/>
+ <typedef-decl name='out_func' type-id='type-id-109' filepath='src.d/zlib.h' line='1096' column='1' id='type-id-110'/>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-104'/>
+ <pointer-type-def type-id='type-id-105' size-in-bits='32' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-111' size-in-bits='32' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-113' size-in-bits='32' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='32' id='type-id-88'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='32' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-115' size-in-bits='32' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='32' id='type-id-116'/>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-117'/>
+ <function-decl name='inflateBackInit_' mangled-name='inflateBackInit_' filepath='src.d/infback.c' line='28' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBackInit_@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='29' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/infback.c' line='30' column='1'/>
+ <parameter type-id='type-id-88' name='window' filepath='src.d/infback.c' line='31' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/infback.c' line='32' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/infback.c' line='33' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBack' mangled-name='inflateBack' filepath='src.d/infback.c' line='251' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBack@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='252' column='1'/>
+ <parameter type-id='type-id-108' name='in' filepath='src.d/infback.c' line='253' column='1'/>
+ <parameter type-id='type-id-85' name='in_desc' filepath='src.d/infback.c' line='254' column='1'/>
+ <parameter type-id='type-id-110' name='out' filepath='src.d/infback.c' line='255' column='1'/>
+ <parameter type-id='type-id-85' name='out_desc' filepath='src.d/infback.c' line='256' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBackEnd' mangled-name='inflateBackEnd' filepath='src.d/infback.c' line='635' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBackEnd@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='636' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate_fast' filepath='src.d/inffast.h' line='11' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='inflate_table' filepath='src.d/inftrees.h' line='60' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-102'/>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-112'/>
+ <parameter type-id='type-id-80'/>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-113'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-88'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-115'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-114'/>
+ <return type-id='type-id-9'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-118'/>
+ <function-decl name='inflateResetKeep' mangled-name='inflateResetKeep' filepath='src.d/inflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='120' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset2' mangled-name='inflateReset2' filepath='src.d/inflate.c' line='158' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateReset2@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='159' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/inflate.c' line='160' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit_' mangled-name='inflateInit_' filepath='src.d/inflate.c' line='242' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateInit_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/inflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/inflate.c' line='245' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflatePrime' mangled-name='inflatePrime' filepath='src.d/inflate.c' line='250' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflatePrime@@ZLIB_1.2.2.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='251' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/inflate.c' line='252' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/inflate.c' line='253' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetDictionary' mangled-name='inflateGetDictionary' filepath='src.d/inflate.c' line='1318' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateGetDictionary@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1319' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-79' name='dictLength' filepath='src.d/inflate.c' line='1321' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSetDictionary' mangled-name='inflateSetDictionary' filepath='src.d/inflate.c' line='1341' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1342' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/inflate.c' line='1343' column='1'/>
+ <parameter type-id='type-id-11' name='dictLength' filepath='src.d/inflate.c' line='1344' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetHeader' mangled-name='inflateGetHeader' filepath='src.d/inflate.c' line='1376' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateGetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1377' column='1'/>
+ <parameter type-id='type-id-43' name='head' filepath='src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSync' mangled-name='inflateSync' filepath='src.d/inflate.c' line='1427' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSync'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1428' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSyncPoint' mangled-name='inflateSyncPoint' filepath='src.d/inflate.c' line='1485' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSyncPoint'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1486' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateCopy' mangled-name='inflateCopy' filepath='src.d/inflate.c' line='1495' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateCopy@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/inflate.c' line='1496' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/inflate.c' line='1497' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateUndermine' mangled-name='inflateUndermine' filepath='src.d/inflate.c' line='1542' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateUndermine@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1543' column='1'/>
+ <parameter type-id='type-id-20' name='subvert' filepath='src.d/inflate.c' line='1544' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateValidate' mangled-name='inflateValidate' filepath='src.d/inflate.c' line='1560' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateValidate@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1561' column='1'/>
+ <parameter type-id='type-id-20' name='check' filepath='src.d/inflate.c' line='1562' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateMark' mangled-name='inflateMark' filepath='src.d/inflate.c' line='1575' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateMark@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1576' column='1'/>
+ <return type-id='type-id-37'/>
+ </function-decl>
+ <function-decl name='inflateCodesUsed' mangled-name='inflateCodesUsed' filepath='src.d/inflate.c' line='1588' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateCodesUsed@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1589' column='1'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-119' size-in-bits='2048' id='type-id-120'>
+ <subrange length='256' lower-bound='0' upper-bound='255' type-id='type-id-9' id='type-id-121'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-119' size-in-bits='4096' id='type-id-122'>
+ <subrange length='512' lower-bound='0' upper-bound='511' type-id='type-id-9' id='type-id-123'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-119' size-in-bits='unknown' id='type-id-124'>
+ <subrange length='unknown' lower-bound='0' upper-bound='0' id='type-id-125'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-68' const='yes' id='type-id-119'/>
+ <var-decl name='_length_code' type-id='type-id-120' visibility='default' filepath='src.d/deflate.h' line='317' column='1'/>
+ <var-decl name='_dist_code' type-id='type-id-122' visibility='default' filepath='src.d/deflate.h' line='318' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-13' size-in-bits='32' id='type-id-126'/>
+ <function-decl name='uncompress2' mangled-name='uncompress2' filepath='src.d/uncompr.c' line='27' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='uncompress2@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='28' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='29' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='30' column='1'/>
+ <parameter type-id='type-id-126' name='sourceLen' filepath='src.d/uncompr.c' line='31' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='uncompress' mangled-name='uncompress' filepath='src.d/uncompr.c' line='86' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='uncompress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='87' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='88' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='89' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/uncompr.c' line='90' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-127' size-in-bits='320' id='type-id-128'>
+ <subrange length='10' lower-bound='0' upper-bound='9' type-id='type-id-9' id='type-id-129'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-54' const='yes' id='type-id-127'/>
+ <function-decl name='zlibVersion' mangled-name='zlibVersion' filepath='src.d/zutil.c' line='27' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibVersion'>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='zlibCompileFlags' mangled-name='zlibCompileFlags' filepath='src.d/zutil.c' line='32' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibCompileFlags@@ZLIB_1.2.0.2'>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zError' mangled-name='zError' filepath='src.d/zutil.c' line='135' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zError'>
+ <parameter type-id='type-id-20' name='err' filepath='src.d/zutil.c' line='136' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <var-decl name='z_errmsg' type-id='type-id-128' visibility='default' filepath='src.d/zutil.h' line='56' column='1'/>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-mips64-unknown-linux-gnuabi64.abi b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-mips64-unknown-linux-gnuabi64.abi
new file mode 100644
index 0000000000..cd0d66f5f5
--- /dev/null
+++ b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-mips64-unknown-linux-gnuabi64.abi
@@ -0,0 +1,1276 @@
+<abi-corpus version='2.2' path='btmp1/libz.so.1.2.13' architecture='elf-mips-r3000-be' soname='libz.so.1'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld.so.1'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='adler32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compressBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen64' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_op' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateCopy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateGetDictionary' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateParams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePending' version='ZLIB_1.2.5.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePrime' version='ZLIB_1.2.0.8' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateTune' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='get_crc_table' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzbuffer' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclearerr' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_r' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_w' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdirect' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzeof' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzerror' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzflush' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfread' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfwrite' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc_' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgets' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset64' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzprintf' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputs' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzread' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzrewind' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzsetparams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzungetc' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzvprintf' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzwrite' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBack' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackEnd' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackInit_' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCodesUsed' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCopy' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetDictionary' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateMark' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflatePrime' version='ZLIB_1.2.2.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset2' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSyncPoint' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateUndermine' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateValidate' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress2' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zError' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibCompileFlags' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibVersion' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <abi-instr address-size='64' path='src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-1'/>
+ <typedef-decl name='Byte' type-id='type-id-2' filepath='./zconf.h' line='397' column='1' id='type-id-3'/>
+ <typedef-decl name='Bytef' type-id='type-id-3' filepath='./zconf.h' line='406' column='1' id='type-id-4'/>
+ <typedef-decl name='__off64_t' type-id='type-id-1' filepath='/usr/mips64-linux-gnuabi64/include/bits/types.h' line='153' column='1' id='type-id-5'/>
+ <typedef-decl name='__off_t' type-id='type-id-1' filepath='/usr/mips64-linux-gnuabi64/include/bits/types.h' line='152' column='1' id='type-id-6'/>
+ <typedef-decl name='off64_t' type-id='type-id-5' filepath='/usr/mips64-linux-gnuabi64/include/sys/types.h' line='92' column='1' id='type-id-7'/>
+ <typedef-decl name='off_t' type-id='type-id-6' filepath='/usr/mips64-linux-gnuabi64/include/sys/types.h' line='85' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-9' filepath='/usr/lib/gcc-cross/mips64-linux-gnuabi64/12/include/stddef.h' line='214' column='1' id='type-id-10'/>
+ <typedef-decl name='uInt' type-id='type-id-11' filepath='./zconf.h' line='399' column='1' id='type-id-12'/>
+ <typedef-decl name='uLong' type-id='type-id-9' filepath='./zconf.h' line='400' column='1' id='type-id-13'/>
+ <typedef-decl name='z_size_t' type-id='type-id-10' filepath='./zconf.h' line='251' column='1' id='type-id-14'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-11'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-4' const='yes' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-15' size-in-bits='64' id='type-id-16'/>
+ <function-decl name='adler32_z' mangled-name='adler32_z' filepath='src.d/adler32.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='64' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='65' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/adler32.c' line='66' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32' mangled-name='adler32' filepath='src.d/adler32.c' line='134' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='135' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='136' column='1'/>
+ <parameter type-id='type-id-12' name='len' filepath='src.d/adler32.c' line='137' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine' mangled-name='adler32_combine' filepath='src.d/adler32.c' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='173' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='174' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/adler32.c' line='175' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine64' mangled-name='adler32_combine64' filepath='src.d/adler32.c' line='180' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='181' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='182' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/adler32.c' line='183' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='uLongf' type-id='type-id-13' filepath='./zconf.h' line='411' column='1' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-18'/>
+ <function-decl name='compress2' mangled-name='compress2' filepath='src.d/compress.c' line='22' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compress2'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='23' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='24' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='26' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/compress.c' line='27' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compress' mangled-name='compress' filepath='src.d/compress.c' line='68' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='69' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='70' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='71' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='72' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compressBound' mangled-name='compressBound' filepath='src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compressBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='82' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflate' filepath='src.d/zlib.h' line='250' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateEnd' filepath='src.d/zlib.h' line='363' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateInit_' filepath='src.d/zlib.h' line='1781' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/crc32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='z_crc_t' type-id='type-id-11' filepath='./zconf.h' line='435' column='1' id='type-id-23'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-24'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-25'/>
+ <qualified-type-def type-id='type-id-23' const='yes' id='type-id-26'/>
+ <pointer-type-def type-id='type-id-26' size-in-bits='64' id='type-id-27'/>
+ <function-decl name='get_crc_table' mangled-name='get_crc_table' filepath='src.d/crc32.c' line='595' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_crc_table'>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='crc32_z' mangled-name='crc32_z' filepath='src.d/crc32.c' line='748' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-9' name='crc' filepath='src.d/crc32.c' line='749' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='750' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/crc32.c' line='751' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32' mangled-name='crc32' filepath='src.d/crc32.c' line='1072' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32'>
+ <parameter type-id='type-id-9' name='crc' filepath='src.d/crc32.c' line='1073' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='1074' column='1'/>
+ <parameter type-id='type-id-12' name='len' filepath='src.d/crc32.c' line='1075' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine64' mangled-name='crc32_combine64' filepath='src.d/crc32.c' line='1081' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1082' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1083' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1084' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine' mangled-name='crc32_combine' filepath='src.d/crc32.c' line='1093' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1094' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1095' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1096' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen64' mangled-name='crc32_combine_gen64' filepath='src.d/crc32.c' line='1102' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_gen64@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1103' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen' mangled-name='crc32_combine_gen' filepath='src.d/crc32.c' line='1112' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_gen@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1113' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_op' mangled-name='crc32_combine_op' filepath='src.d/crc32.c' line='1119' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_op@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1120' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1121' column='1'/>
+ <parameter type-id='type-id-13' name='op' filepath='src.d/crc32.c' line='1122' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <type-decl name='void' id='type-id-28'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-29'/>
+ <array-type-def dimensions='1' type-id='type-id-30' size-in-bits='1248' id='type-id-31'>
+ <subrange length='39' lower-bound='0' upper-bound='38' type-id='type-id-9' id='type-id-32'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-30' size-in-bits='18336' id='type-id-33'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-34'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-30' size-in-bits='1952' id='type-id-35'>
+ <subrange length='61' lower-bound='0' upper-bound='60' type-id='type-id-9' id='type-id-36'/>
+ </array-type-def>
+ <type-decl name='int' size-in-bits='32' id='type-id-20'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-37'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-34'/>
+ </array-type-def>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='68' column='1' id='type-id-30'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-38' visibility='default' filepath='src.d/deflate.h' line='72' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-39' visibility='default' filepath='src.d/deflate.h' line='76' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='gz_header_s' size-in-bits='640' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='114' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='time' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='xflags' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='os' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='extra_len' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='extra_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='name' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='name_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='comment' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='comm_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='hcrc' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='done' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='127' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='internal_state' size-in-bits='47616' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='100' column='1' id='type-id-41'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='status' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_buf' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='pending_buf_size' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='pending_out' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='pending' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='wrap' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='gzhead' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='gzindex' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='method' type-id='type-id-3' visibility='default' filepath='src.d/deflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='last_flush' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='w_size' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='w_bits' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='w_mask' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='window' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='window_size' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='prev' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='head' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='140' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='ins_h' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='142' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='hash_size' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='143' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='hash_bits' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='144' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='hash_mask' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='hash_shift' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='147' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='block_start' type-id='type-id-1' visibility='default' filepath='src.d/deflate.h' line='154' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='match_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='159' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='prev_match' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='match_available' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='161' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1376'>
+ <var-decl name='strstart' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='162' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='match_start' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='163' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='lookahead' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='164' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='prev_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='max_chain_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='171' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='max_lazy_match' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1568'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1600'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1632'>
+ <var-decl name='good_match' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1664'>
+ <var-decl name='nice_match' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='194' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1696'>
+ <var-decl name='dyn_ltree' type-id='type-id-33' visibility='default' filepath='src.d/deflate.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20032'>
+ <var-decl name='dyn_dtree' type-id='type-id-35' visibility='default' filepath='src.d/deflate.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='21984'>
+ <var-decl name='bl_tree' type-id='type-id-31' visibility='default' filepath='src.d/deflate.h' line='200' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23232'>
+ <var-decl name='l_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23424'>
+ <var-decl name='d_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23616'>
+ <var-decl name='bl_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='204' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23808'>
+ <var-decl name='bl_count' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='206' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24064'>
+ <var-decl name='heap' type-id='type-id-37' visibility='default' filepath='src.d/deflate.h' line='209' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42400'>
+ <var-decl name='heap_len' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42432'>
+ <var-decl name='heap_max' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='211' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42464'>
+ <var-decl name='depth' type-id='type-id-48' visibility='default' filepath='src.d/deflate.h' line='216' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47104'>
+ <var-decl name='sym_buf' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47168'>
+ <var-decl name='lit_bufsize' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='222' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47200'>
+ <var-decl name='sym_next' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='242' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47232'>
+ <var-decl name='sym_end' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='243' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47296'>
+ <var-decl name='opt_len' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='245' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47360'>
+ <var-decl name='static_len' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='246' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47424'>
+ <var-decl name='matches' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='247' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47456'>
+ <var-decl name='insert' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='248' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47488'>
+ <var-decl name='bi_buf' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='255' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47520'>
+ <var-decl name='bi_valid' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='259' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47552'>
+ <var-decl name='high_water' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='264' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='tree_desc_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='86' column='1' id='type-id-46'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='max_code' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='stat_desc' type-id='type-id-52' visibility='default' filepath='src.d/deflate.h' line='89' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='z_stream_s' size-in-bits='896' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='86' column='1' id='type-id-53'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='avail_in' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='total_in' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='next_out' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='avail_out' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='92' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total_out' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='msg' type-id='type-id-54' visibility='default' filepath='src.d/zlib.h' line='95' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='state' type-id='type-id-55' visibility='default' filepath='src.d/zlib.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='zalloc' type-id='type-id-56' visibility='default' filepath='src.d/zlib.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='zfree' type-id='type-id-57' visibility='default' filepath='src.d/zlib.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='opaque' type-id='type-id-58' visibility='default' filepath='src.d/zlib.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='data_type' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='adler' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='reserved' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='105' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='IPos' type-id='type-id-11' filepath='src.d/deflate.h' line='94' column='1' id='type-id-45'/>
+ <typedef-decl name='Pos' type-id='type-id-50' filepath='src.d/deflate.h' line='92' column='1' id='type-id-59'/>
+ <typedef-decl name='Posf' type-id='type-id-59' filepath='src.d/deflate.h' line='93' column='1' id='type-id-60'/>
+ <typedef-decl name='alloc_func' type-id='type-id-61' filepath='src.d/zlib.h' line='81' column='1' id='type-id-56'/>
+ <typedef-decl name='charf' type-id='type-id-29' filepath='./zconf.h' line='408' column='1' id='type-id-62'/>
+ <typedef-decl name='ct_data' type-id='type-id-30' filepath='src.d/deflate.h' line='77' column='1' id='type-id-63'/>
+ <typedef-decl name='deflate_state' type-id='type-id-41' filepath='src.d/deflate.h' line='271' column='1' id='type-id-64'/>
+ <typedef-decl name='free_func' type-id='type-id-65' filepath='src.d/zlib.h' line='82' column='1' id='type-id-57'/>
+ <typedef-decl name='gz_header' type-id='type-id-40' filepath='src.d/zlib.h' line='129' column='1' id='type-id-66'/>
+ <typedef-decl name='gz_headerp' type-id='type-id-67' filepath='src.d/zlib.h' line='131' column='1' id='type-id-43'/>
+ <typedef-decl name='uch' type-id='type-id-2' filepath='src.d/zutil.h' line='39' column='1' id='type-id-68'/>
+ <typedef-decl name='uchf' type-id='type-id-68' filepath='src.d/zutil.h' line='40' column='1' id='type-id-69'/>
+ <typedef-decl name='ulg' type-id='type-id-9' filepath='src.d/zutil.h' line='43' column='1' id='type-id-42'/>
+ <typedef-decl name='ush' type-id='type-id-70' filepath='src.d/zutil.h' line='41' column='1' id='type-id-50'/>
+ <typedef-decl name='z_stream' type-id='type-id-53' filepath='src.d/zlib.h' line='106' column='1' id='type-id-71'/>
+ <typedef-decl name='z_streamp' type-id='type-id-72' filepath='src.d/zlib.h' line='108' column='1' id='type-id-21'/>
+ <array-type-def dimensions='1' type-id='type-id-68' size-in-bits='4584' id='type-id-48'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-34'/>
+ </array-type-def>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='73' column='1' id='type-id-39'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='74' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='75' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='69' column='1' id='type-id-38'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='70' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='71' column='1'/>
+ </data-member>
+ </union-decl>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-70'/>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='256' id='type-id-47'>
+ <subrange length='16' lower-bound='0' upper-bound='15' type-id='type-id-9' id='type-id-73'/>
+ </array-type-def>
+ <pointer-type-def type-id='type-id-4' size-in-bits='64' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-60' size-in-bits='64' id='type-id-44'/>
+ <pointer-type-def type-id='type-id-29' size-in-bits='64' id='type-id-54'/>
+ <pointer-type-def type-id='type-id-62' size-in-bits='64' id='type-id-74'/>
+ <qualified-type-def type-id='type-id-29' const='yes' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-75' size-in-bits='64' id='type-id-22'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-64' size-in-bits='64' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-66' size-in-bits='64' id='type-id-67'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='64' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-78' size-in-bits='64' id='type-id-61'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-69' size-in-bits='64' id='type-id-49'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-81' size-in-bits='64' id='type-id-65'/>
+ <pointer-type-def type-id='type-id-71' size-in-bits='64' id='type-id-72'/>
+ <qualified-type-def type-id='type-id-82' const='yes' id='type-id-83'/>
+ <pointer-type-def type-id='type-id-83' size-in-bits='64' id='type-id-52'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-84'/>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-58'/>
+ <function-decl name='memcpy' filepath='/usr/mips64-linux-gnuabi64/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/mips64-linux-gnuabi64/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='deflateInit2_' mangled-name='deflateInit2_' filepath='src.d/deflate.c' line='237' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateInit2_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='239' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='240' column='1'/>
+ <parameter type-id='type-id-20' name='method' filepath='src.d/deflate.c' line='241' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/deflate.c' line='242' column='1'/>
+ <parameter type-id='type-id-20' name='memLevel' filepath='src.d/deflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/deflate.c' line='245' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/deflate.c' line='246' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetDictionary' mangled-name='deflateSetDictionary' filepath='src.d/deflate.c' line='412' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='413' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/deflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-12' name='dictLength' filepath='src.d/deflate.c' line='415' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateGetDictionary' mangled-name='deflateGetDictionary' filepath='src.d/deflate.c' line='481' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateGetDictionary@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='482' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/deflate.c' line='483' column='1'/>
+ <parameter type-id='type-id-79' name='dictLength' filepath='src.d/deflate.c' line='484' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateResetKeep' mangled-name='deflateResetKeep' filepath='src.d/deflate.c' line='503' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='504' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateReset' mangled-name='deflateReset' filepath='src.d/deflate.c' line='541' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateReset'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='542' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetHeader' mangled-name='deflateSetHeader' filepath='src.d/deflate.c' line='553' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateSetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='554' column='1'/>
+ <parameter type-id='type-id-43' name='head' filepath='src.d/deflate.c' line='555' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePending' mangled-name='deflatePending' filepath='src.d/deflate.c' line='564' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflatePending@@ZLIB_1.2.5.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='567' column='1'/>
+ <parameter type-id='type-id-80' name='pending' filepath='src.d/deflate.c' line='565' column='1'/>
+ <parameter type-id='type-id-77' name='bits' filepath='src.d/deflate.c' line='566' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePrime' mangled-name='deflatePrime' filepath='src.d/deflate.c' line='578' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflatePrime@@ZLIB_1.2.0.8'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='579' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/deflate.c' line='580' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/deflate.c' line='581' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateParams' mangled-name='deflateParams' filepath='src.d/deflate.c' line='605' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateParams'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='606' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='607' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='608' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateTune' mangled-name='deflateTune' filepath='src.d/deflate.c' line='654' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateTune@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='655' column='1'/>
+ <parameter type-id='type-id-20' name='good_length' filepath='src.d/deflate.c' line='656' column='1'/>
+ <parameter type-id='type-id-20' name='max_lazy' filepath='src.d/deflate.c' line='657' column='1'/>
+ <parameter type-id='type-id-20' name='nice_length' filepath='src.d/deflate.c' line='658' column='1'/>
+ <parameter type-id='type-id-20' name='max_chain' filepath='src.d/deflate.c' line='659' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateBound' mangled-name='deflateBound' filepath='src.d/deflate.c' line='696' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='697' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/deflate.c' line='698' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflateCopy' mangled-name='deflateCopy' filepath='src.d/deflate.c' line='1156' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateCopy'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/deflate.c' line='1157' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/deflate.c' line='1158' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <typedef-decl name='static_tree_desc' type-id='type-id-84' filepath='src.d/deflate.h' line='84' column='1' id='type-id-82'/>
+ <function-decl name='_tr_init' filepath='src.d/deflate.h' line='294' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-28'/>
+ </function-decl>
+ <function-decl name='_tr_flush_block' filepath='src.d/deflate.h' line='296' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-28'/>
+ </function-decl>
+ <function-decl name='_tr_flush_bits' filepath='src.d/deflate.h' line='298' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-28'/>
+ </function-decl>
+ <function-decl name='_tr_align' filepath='src.d/deflate.h' line='299' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-28'/>
+ </function-decl>
+ <function-decl name='_tr_stored_block' filepath='src.d/deflate.h' line='300' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-28'/>
+ </function-decl>
+ <function-decl name='crc32' filepath='src.d/zlib.h' line='1727' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-13'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zcalloc' filepath='src.d/zutil.h' line='261' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-58'/>
+ </function-decl>
+ <function-decl name='zcfree' filepath='src.d/zutil.h' line='263' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-58'/>
+ <return type-id='type-id-28'/>
+ </function-decl>
+ <pointer-type-def type-id='type-id-28' id='type-id-85'/>
+ <function-type size-in-bits='64' id='type-id-81'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-58'/>
+ <return type-id='type-id-28'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-78'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-12'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-58'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzclose.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gzFile_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='1834' column='1' id='type-id-86'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='1835' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='next' type-id='type-id-87' visibility='default' filepath='src.d/zlib.h' line='1836' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pos' type-id='type-id-7' visibility='default' filepath='src.d/zlib.h' line='1837' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gzFile' type-id='type-id-88' filepath='src.d/zlib.h' line='1302' column='1' id='type-id-89'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='64' id='type-id-88'/>
+ <function-decl name='gzclose' mangled-name='gzclose' filepath='src.d/gzclose.c' line='11' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzclose'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzclose.c' line='12' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_r' filepath='src.d/zlib.h' line='1644' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_w' filepath='src.d/zlib.h' line='1645' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='open' filepath='/usr/mips64-linux-gnuabi64/include/fcntl.h' line='209' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='snprintf' filepath='/usr/mips64-linux-gnuabi64/include/stdio.h' line='385' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-54'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/mips64-linux-gnuabi64/include/stdlib.h' line='672' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='free' filepath='/usr/mips64-linux-gnuabi64/include/stdlib.h' line='687' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-85'/>
+ <return type-id='type-id-28'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/mips64-linux-gnuabi64/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/mips64-linux-gnuabi64/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-5'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='gzopen' mangled-name='gzopen' filepath='src.d/gzlib.c' line='272' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzopen'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='273' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='274' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzopen64' mangled-name='gzopen64' filepath='src.d/gzlib.c' line='280' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzopen64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='281' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='282' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzdopen' mangled-name='gzdopen' filepath='src.d/gzlib.c' line='288' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzdopen'>
+ <parameter type-id='type-id-20' name='fd' filepath='src.d/gzlib.c' line='289' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='290' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzbuffer' mangled-name='gzbuffer' filepath='src.d/gzlib.c' line='318' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzbuffer@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='319' column='1'/>
+ <parameter type-id='type-id-11' name='size' filepath='src.d/gzlib.c' line='320' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzrewind' mangled-name='gzrewind' filepath='src.d/gzlib.c' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzrewind'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='346' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzseek64' mangled-name='gzseek64' filepath='src.d/gzlib.c' line='368' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzseek64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='369' column='1'/>
+ <parameter type-id='type-id-7' name='offset' filepath='src.d/gzlib.c' line='370' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='371' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzseek' mangled-name='gzseek' filepath='src.d/gzlib.c' line='445' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzseek'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='446' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='src.d/gzlib.c' line='447' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='448' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gztell64' mangled-name='gztell64' filepath='src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gztell64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='458' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gztell' mangled-name='gztell' filepath='src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gztell'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='475' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzoffset64' mangled-name='gzoffset64' filepath='src.d/gzlib.c' line='484' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzoffset64@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='485' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzoffset' mangled-name='gzoffset' filepath='src.d/gzlib.c' line='507' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzoffset@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='508' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzeof' mangled-name='gzeof' filepath='src.d/gzlib.c' line='517' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzeof'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='518' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzerror' mangled-name='gzerror' filepath='src.d/gzlib.c' line='534' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzerror'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='535' column='1'/>
+ <parameter type-id='type-id-77' name='errnum' filepath='src.d/gzlib.c' line='536' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclearerr' mangled-name='gzclearerr' filepath='src.d/gzlib.c' line='555' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzclearerr@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='556' column='1'/>
+ <return type-id='type-id-28'/>
+ </function-decl>
+ <type-decl name='variadic parameter type' id='type-id-90'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1920' is-struct='yes' naming-typedef-id='type-id-91' visibility='default' filepath='src.d/gzguts.h' line='170' column='1' id='type-id-92'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-86' visibility='default' filepath='src.d/gzguts.h' line='172' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='mode' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='fd' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='path' type-id='type-id-54' visibility='default' filepath='src.d/gzguts.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='size' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='180' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='want' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='in' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='182' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='out' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='183' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='direct' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='184' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='how' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='start' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='eof' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='past' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='192' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reset' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='193' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='skip' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='195' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='seek' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='196' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='err' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='msg' type-id='type-id-54' visibility='default' filepath='src.d/gzguts.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='strm' type-id='type-id-71' visibility='default' filepath='src.d/gzguts.h' line='201' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__ssize_t' type-id='type-id-1' filepath='/usr/mips64-linux-gnuabi64/include/bits/types.h' line='194' column='1' id='type-id-93'/>
+ <typedef-decl name='gz_state' type-id='type-id-92' filepath='src.d/gzguts.h' line='202' column='1' id='type-id-91'/>
+ <typedef-decl name='gz_statep' type-id='type-id-94' filepath='src.d/gzguts.h' line='203' column='1' id='type-id-95'/>
+ <typedef-decl name='ssize_t' type-id='type-id-93' filepath='/usr/mips64-linux-gnuabi64/include/sys/types.h' line='108' column='1' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-91' size-in-bits='64' id='type-id-94'/>
+ <typedef-decl name='voidp' type-id='type-id-85' filepath='./zconf.h' line='416' column='1' id='type-id-97'/>
+ <function-decl name='__errno_location' filepath='/usr/mips64-linux-gnuabi64/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-77'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/mips64-linux-gnuabi64/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/mips64-linux-gnuabi64/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-54'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/mips64-linux-gnuabi64/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='read' filepath='/usr/mips64-linux-gnuabi64/include/unistd.h' line='371' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-96'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='src.d/gzguts.h' line='206' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-28'/>
+ </function-decl>
+ <function-decl name='gzread' mangled-name='gzread' filepath='src.d/gzread.c' line='373' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzread'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='374' column='1'/>
+ <parameter type-id='type-id-97' name='buf' filepath='src.d/gzread.c' line='375' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzread.c' line='376' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfread' mangled-name='gzfread' filepath='src.d/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzfread@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-97' name='buf' filepath='src.d/gzread.c' line='410' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzread.c' line='411' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzread.c' line='412' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='413' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzgetc' mangled-name='gzgetc' filepath='src.d/gzread.c' line='445' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgetc'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='446' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgetc_' mangled-name='gzgetc_' filepath='src.d/gzread.c' line='472' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgetc_@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='473' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzungetc' mangled-name='gzungetc' filepath='src.d/gzread.c' line='479' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzungetc@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzread.c' line='480' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='481' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgets' mangled-name='gzgets' filepath='src.d/gzread.c' line='539' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgets'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='540' column='1'/>
+ <parameter type-id='type-id-54' name='buf' filepath='src.d/gzread.c' line='541' column='1'/>
+ <parameter type-id='type-id-20' name='len' filepath='src.d/gzread.c' line='542' column='1'/>
+ <return type-id='type-id-54'/>
+ </function-decl>
+ <function-decl name='gzdirect' mangled-name='gzdirect' filepath='src.d/gzread.c' line='603' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzdirect@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='604' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate' filepath='src.d/zlib.h' line='400' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateEnd' filepath='src.d/zlib.h' line='520' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset' filepath='src.d/zlib.h' line='959' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit2_' filepath='src.d/zlib.h' line='1789' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpc' type-id='type-id-85' filepath='./zconf.h' line='414' column='1' id='type-id-98'/>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-85' filepath='/usr/lib/gcc-cross/mips64-linux-gnuabi64/12/include/stdarg.h' line='40' column='1' id='type-id-99'/>
+ <typedef-decl name='va_list' type-id='type-id-99' filepath='/usr/lib/gcc-cross/mips64-linux-gnuabi64/12/include/stdarg.h' line='99' column='1' id='type-id-100'/>
+ <function-decl name='vsnprintf' filepath='/usr/mips64-linux-gnuabi64/include/stdio.h' line='389' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-54'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-85'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='memmove' filepath='/usr/mips64-linux-gnuabi64/include/string.h' line='47' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/mips64-linux-gnuabi64/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-96'/>
+ </function-decl>
+ <function-decl name='gzwrite' mangled-name='gzwrite' filepath='src.d/gzwrite.c' line='255' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzwrite'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='256' column='1'/>
+ <parameter type-id='type-id-98' name='buf' filepath='src.d/gzwrite.c' line='257' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfwrite' mangled-name='gzfwrite' filepath='src.d/gzwrite.c' line='283' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzfwrite@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-98' name='buf' filepath='src.d/gzwrite.c' line='284' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzwrite.c' line='285' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzwrite.c' line='286' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzputc' mangled-name='gzputc' filepath='src.d/gzwrite.c' line='313' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzputc'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='314' column='1'/>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzwrite.c' line='315' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzputs' mangled-name='gzputs' filepath='src.d/gzwrite.c' line='361' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzputs'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='362' column='1'/>
+ <parameter type-id='type-id-22' name='s' filepath='src.d/gzwrite.c' line='363' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzvprintf' mangled-name='gzvprintf' filepath='src.d/gzwrite.c' line='391' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzvprintf@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-100' name='va' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzprintf' mangled-name='gzprintf' filepath='src.d/gzwrite.c' line='463' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzprintf'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzflush' mangled-name='gzflush' filepath='src.d/gzwrite.c' line='565' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzflush'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='566' column='1'/>
+ <parameter type-id='type-id-20' name='flush' filepath='src.d/gzwrite.c' line='567' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzsetparams' mangled-name='gzsetparams' filepath='src.d/gzwrite.c' line='597' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzsetparams'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='598' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/gzwrite.c' line='599' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/gzwrite.c' line='600' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <enum-decl name='codetype' naming-typedef-id='type-id-101' filepath='src.d/inftrees.h' line='54' column='1' id='type-id-102'>
+ <underlying-type type-id='type-id-103'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-104' visibility='default' filepath='src.d/inftrees.h' line='24' column='1' id='type-id-105'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-70' visibility='default' filepath='src.d/inftrees.h' line='27' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-105' filepath='src.d/inftrees.h' line='28' column='1' id='type-id-104'/>
+ <typedef-decl name='codetype' type-id='type-id-102' filepath='src.d/inftrees.h' line='58' column='1' id='type-id-101'/>
+ <typedef-decl name='in_func' type-id='type-id-106' filepath='src.d/zlib.h' line='1094' column='1' id='type-id-107'/>
+ <typedef-decl name='out_func' type-id='type-id-108' filepath='src.d/zlib.h' line='1096' column='1' id='type-id-109'/>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-103'/>
+ <pointer-type-def type-id='type-id-104' size-in-bits='64' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-110' size-in-bits='64' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-112' size-in-bits='64' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-87'/>
+ <pointer-type-def type-id='type-id-87' size-in-bits='64' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-114' size-in-bits='64' id='type-id-106'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='64' id='type-id-115'/>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-116'/>
+ <function-decl name='inflateBackInit_' mangled-name='inflateBackInit_' filepath='src.d/infback.c' line='28' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBackInit_@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='29' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/infback.c' line='30' column='1'/>
+ <parameter type-id='type-id-87' name='window' filepath='src.d/infback.c' line='31' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/infback.c' line='32' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/infback.c' line='33' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBack' mangled-name='inflateBack' filepath='src.d/infback.c' line='251' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBack@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='252' column='1'/>
+ <parameter type-id='type-id-107' name='in' filepath='src.d/infback.c' line='253' column='1'/>
+ <parameter type-id='type-id-85' name='in_desc' filepath='src.d/infback.c' line='254' column='1'/>
+ <parameter type-id='type-id-109' name='out' filepath='src.d/infback.c' line='255' column='1'/>
+ <parameter type-id='type-id-85' name='out_desc' filepath='src.d/infback.c' line='256' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBackEnd' mangled-name='inflateBackEnd' filepath='src.d/infback.c' line='635' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBackEnd@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='636' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate_fast' filepath='src.d/inffast.h' line='11' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-28'/>
+ </function-decl>
+ <function-decl name='inflate_table' filepath='src.d/inftrees.h' line='60' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-101'/>
+ <parameter type-id='type-id-115'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-111'/>
+ <parameter type-id='type-id-80'/>
+ <parameter type-id='type-id-115'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-112'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-87'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-114'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-113'/>
+ <return type-id='type-id-11'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-117'/>
+ <function-decl name='inflateResetKeep' mangled-name='inflateResetKeep' filepath='src.d/inflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='120' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset2' mangled-name='inflateReset2' filepath='src.d/inflate.c' line='158' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateReset2@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='159' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/inflate.c' line='160' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit_' mangled-name='inflateInit_' filepath='src.d/inflate.c' line='242' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateInit_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/inflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/inflate.c' line='245' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflatePrime' mangled-name='inflatePrime' filepath='src.d/inflate.c' line='250' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflatePrime@@ZLIB_1.2.2.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='251' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/inflate.c' line='252' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/inflate.c' line='253' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetDictionary' mangled-name='inflateGetDictionary' filepath='src.d/inflate.c' line='1318' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateGetDictionary@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1319' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-79' name='dictLength' filepath='src.d/inflate.c' line='1321' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSetDictionary' mangled-name='inflateSetDictionary' filepath='src.d/inflate.c' line='1341' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1342' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/inflate.c' line='1343' column='1'/>
+ <parameter type-id='type-id-12' name='dictLength' filepath='src.d/inflate.c' line='1344' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetHeader' mangled-name='inflateGetHeader' filepath='src.d/inflate.c' line='1376' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateGetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1377' column='1'/>
+ <parameter type-id='type-id-43' name='head' filepath='src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSync' mangled-name='inflateSync' filepath='src.d/inflate.c' line='1427' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSync'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1428' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSyncPoint' mangled-name='inflateSyncPoint' filepath='src.d/inflate.c' line='1485' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSyncPoint'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1486' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateCopy' mangled-name='inflateCopy' filepath='src.d/inflate.c' line='1495' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateCopy@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/inflate.c' line='1496' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/inflate.c' line='1497' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateUndermine' mangled-name='inflateUndermine' filepath='src.d/inflate.c' line='1542' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateUndermine@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1543' column='1'/>
+ <parameter type-id='type-id-20' name='subvert' filepath='src.d/inflate.c' line='1544' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateValidate' mangled-name='inflateValidate' filepath='src.d/inflate.c' line='1560' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateValidate@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1561' column='1'/>
+ <parameter type-id='type-id-20' name='check' filepath='src.d/inflate.c' line='1562' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateMark' mangled-name='inflateMark' filepath='src.d/inflate.c' line='1575' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateMark@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1576' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='inflateCodesUsed' mangled-name='inflateCodesUsed' filepath='src.d/inflate.c' line='1588' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateCodesUsed@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1589' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='2048' id='type-id-119'>
+ <subrange length='256' lower-bound='0' upper-bound='255' type-id='type-id-9' id='type-id-120'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='4096' id='type-id-121'>
+ <subrange length='512' lower-bound='0' upper-bound='511' type-id='type-id-9' id='type-id-122'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='unknown' id='type-id-123'>
+ <subrange length='unknown' lower-bound='0' upper-bound='0' id='type-id-124'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-68' const='yes' id='type-id-118'/>
+ <var-decl name='_length_code' type-id='type-id-119' visibility='default' filepath='src.d/deflate.h' line='317' column='1'/>
+ <var-decl name='_dist_code' type-id='type-id-121' visibility='default' filepath='src.d/deflate.h' line='318' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-125'/>
+ <function-decl name='uncompress2' mangled-name='uncompress2' filepath='src.d/uncompr.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='uncompress2@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='28' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='29' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='30' column='1'/>
+ <parameter type-id='type-id-125' name='sourceLen' filepath='src.d/uncompr.c' line='31' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='uncompress' mangled-name='uncompress' filepath='src.d/uncompr.c' line='86' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='uncompress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='87' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='88' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='89' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/uncompr.c' line='90' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-126' size-in-bits='640' id='type-id-127'>
+ <subrange length='10' lower-bound='0' upper-bound='9' type-id='type-id-9' id='type-id-128'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-54' const='yes' id='type-id-126'/>
+ <function-decl name='zlibVersion' mangled-name='zlibVersion' filepath='src.d/zutil.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibVersion'>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='zlibCompileFlags' mangled-name='zlibCompileFlags' filepath='src.d/zutil.c' line='32' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibCompileFlags@@ZLIB_1.2.0.2'>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zError' mangled-name='zError' filepath='src.d/zutil.c' line='135' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zError'>
+ <parameter type-id='type-id-20' name='err' filepath='src.d/zutil.c' line='136' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <var-decl name='z_errmsg' type-id='type-id-127' visibility='default' filepath='src.d/zutil.h' line='56' column='1'/>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc-unknown-linux-gnu.abi b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc-unknown-linux-gnu.abi
new file mode 100644
index 0000000000..3eefc76467
--- /dev/null
+++ b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc-unknown-linux-gnu.abi
@@ -0,0 +1,1286 @@
+<abi-corpus version='2.2' path='btmp1/libz.so.1.2.13' architecture='elf-powerpc' soname='libz.so.1'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='adler32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compressBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen64' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_op' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateCopy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateGetDictionary' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateParams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePending' version='ZLIB_1.2.5.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePrime' version='ZLIB_1.2.0.8' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateTune' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='get_crc_table' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzbuffer' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclearerr' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_r' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_w' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdirect' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzeof' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzerror' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzflush' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfread' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfwrite' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc_' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgets' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset64' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzprintf' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputs' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzread' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzrewind' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzsetparams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzungetc' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzvprintf' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzwrite' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBack' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackEnd' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackInit_' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCodesUsed' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCopy' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetDictionary' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateMark' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflatePrime' version='ZLIB_1.2.2.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset2' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSyncPoint' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateUndermine' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateValidate' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress2' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zError' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibCompileFlags' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibVersion' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <abi-instr address-size='32' path='src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-1'/>
+ <typedef-decl name='Byte' type-id='type-id-2' filepath='./zconf.h' line='397' column='1' id='type-id-3'/>
+ <typedef-decl name='Bytef' type-id='type-id-3' filepath='./zconf.h' line='406' column='1' id='type-id-4'/>
+ <typedef-decl name='__int64_t' type-id='type-id-1' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='47' column='1' id='type-id-5'/>
+ <typedef-decl name='__off64_t' type-id='type-id-5' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='153' column='1' id='type-id-6'/>
+ <typedef-decl name='off64_t' type-id='type-id-6' filepath='/usr/powerpc-linux-gnu/include/sys/types.h' line='92' column='1' id='type-id-7'/>
+ <typedef-decl name='off_t' type-id='type-id-6' filepath='/usr/powerpc-linux-gnu/include/sys/types.h' line='87' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-9' filepath='/usr/lib/gcc-cross/powerpc-linux-gnu/13/include/stddef.h' line='214' column='1' id='type-id-10'/>
+ <typedef-decl name='uInt' type-id='type-id-9' filepath='./zconf.h' line='399' column='1' id='type-id-11'/>
+ <typedef-decl name='uLong' type-id='type-id-12' filepath='./zconf.h' line='400' column='1' id='type-id-13'/>
+ <typedef-decl name='z_size_t' type-id='type-id-10' filepath='./zconf.h' line='251' column='1' id='type-id-14'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-9'/>
+ <type-decl name='unsigned long int' size-in-bits='32' id='type-id-12'/>
+ <qualified-type-def type-id='type-id-4' const='yes' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-15' size-in-bits='32' id='type-id-16'/>
+ <function-decl name='adler32_z' mangled-name='adler32_z' filepath='src.d/adler32.c' line='63' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='64' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='65' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/adler32.c' line='66' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32' mangled-name='adler32' filepath='src.d/adler32.c' line='134' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='135' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='136' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/adler32.c' line='137' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine' mangled-name='adler32_combine' filepath='src.d/adler32.c' line='172' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='173' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='174' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/adler32.c' line='175' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine64' mangled-name='adler32_combine64' filepath='src.d/adler32.c' line='180' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='181' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='182' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/adler32.c' line='183' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='uLongf' type-id='type-id-13' filepath='./zconf.h' line='411' column='1' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='32' id='type-id-18'/>
+ <function-decl name='compress2' mangled-name='compress2' filepath='src.d/compress.c' line='22' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compress2'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='23' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='24' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='26' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/compress.c' line='27' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compress' mangled-name='compress' filepath='src.d/compress.c' line='68' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='69' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='70' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='71' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='72' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compressBound' mangled-name='compressBound' filepath='src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compressBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='82' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflate' filepath='src.d/zlib.h' line='250' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateEnd' filepath='src.d/zlib.h' line='363' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateInit_' filepath='src.d/zlib.h' line='1781' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/crc32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='z_crc_t' type-id='type-id-9' filepath='./zconf.h' line='435' column='1' id='type-id-23'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-24'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='32' id='type-id-25'/>
+ <qualified-type-def type-id='type-id-23' const='yes' id='type-id-26'/>
+ <pointer-type-def type-id='type-id-26' size-in-bits='32' id='type-id-27'/>
+ <function-decl name='get_crc_table' mangled-name='get_crc_table' filepath='src.d/crc32.c' line='595' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='get_crc_table'>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='crc32_z' mangled-name='crc32_z' filepath='src.d/crc32.c' line='748' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-12' name='crc' filepath='src.d/crc32.c' line='749' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='750' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/crc32.c' line='751' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32' mangled-name='crc32' filepath='src.d/crc32.c' line='1072' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32'>
+ <parameter type-id='type-id-12' name='crc' filepath='src.d/crc32.c' line='1073' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='1074' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/crc32.c' line='1075' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine64' mangled-name='crc32_combine64' filepath='src.d/crc32.c' line='1081' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1082' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1083' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1084' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine' mangled-name='crc32_combine' filepath='src.d/crc32.c' line='1093' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1094' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1095' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1096' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen64' mangled-name='crc32_combine_gen64' filepath='src.d/crc32.c' line='1102' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_gen64@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1103' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen' mangled-name='crc32_combine_gen' filepath='src.d/crc32.c' line='1112' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_gen@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1113' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_op' mangled-name='crc32_combine_op' filepath='src.d/crc32.c' line='1119' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_op@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1120' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1121' column='1'/>
+ <parameter type-id='type-id-13' name='op' filepath='src.d/crc32.c' line='1122' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-28'/>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1248' id='type-id-30'>
+ <subrange length='39' lower-bound='0' upper-bound='38' type-id='type-id-9' id='type-id-31'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='18336' id='type-id-32'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1952' id='type-id-34'>
+ <subrange length='61' lower-bound='0' upper-bound='60' type-id='type-id-9' id='type-id-35'/>
+ </array-type-def>
+ <type-decl name='int' size-in-bits='32' id='type-id-20'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-36'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <type-decl name='long int' size-in-bits='32' id='type-id-37'/>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='68' column='1' id='type-id-29'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-38' visibility='default' filepath='src.d/deflate.h' line='72' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-39' visibility='default' filepath='src.d/deflate.h' line='76' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='gz_header_s' size-in-bits='416' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='114' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='time' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='xflags' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='os' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='extra' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='extra_len' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='name' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='name_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='comment' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='comm_max' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='hcrc' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='done' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='127' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='internal_state' size-in-bits='46624' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='100' column='1' id='type-id-41'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='status' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_buf' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='pending_buf_size' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_out' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='pending' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='wrap' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='gzhead' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='gzindex' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='method' type-id='type-id-3' visibility='default' filepath='src.d/deflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='last_flush' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='w_size' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='w_bits' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='w_mask' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='window' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='window_size' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='prev' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='head' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='140' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='ins_h' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='142' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='hash_size' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='143' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='hash_bits' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='144' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='hash_mask' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='hash_shift' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='147' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='block_start' type-id='type-id-37' visibility='default' filepath='src.d/deflate.h' line='154' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='match_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='159' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='prev_match' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='match_available' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='161' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strstart' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='162' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='match_start' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='163' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='lookahead' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='164' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='prev_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='max_chain_length' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='171' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='max_lazy_match' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='good_match' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='nice_match' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='194' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='dyn_ltree' type-id='type-id-32' visibility='default' filepath='src.d/deflate.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='19520'>
+ <var-decl name='dyn_dtree' type-id='type-id-34' visibility='default' filepath='src.d/deflate.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='21472'>
+ <var-decl name='bl_tree' type-id='type-id-30' visibility='default' filepath='src.d/deflate.h' line='200' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22720'>
+ <var-decl name='l_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22816'>
+ <var-decl name='d_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22912'>
+ <var-decl name='bl_desc' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='204' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23008'>
+ <var-decl name='bl_count' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='206' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23264'>
+ <var-decl name='heap' type-id='type-id-36' visibility='default' filepath='src.d/deflate.h' line='209' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41600'>
+ <var-decl name='heap_len' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41632'>
+ <var-decl name='heap_max' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='211' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41664'>
+ <var-decl name='depth' type-id='type-id-48' visibility='default' filepath='src.d/deflate.h' line='216' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46272'>
+ <var-decl name='sym_buf' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46304'>
+ <var-decl name='lit_bufsize' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='222' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46336'>
+ <var-decl name='sym_next' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='242' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46368'>
+ <var-decl name='sym_end' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='243' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46400'>
+ <var-decl name='opt_len' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='245' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46432'>
+ <var-decl name='static_len' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='246' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46464'>
+ <var-decl name='matches' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='247' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46496'>
+ <var-decl name='insert' type-id='type-id-11' visibility='default' filepath='src.d/deflate.h' line='248' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46528'>
+ <var-decl name='bi_buf' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='255' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46560'>
+ <var-decl name='bi_valid' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='259' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46592'>
+ <var-decl name='high_water' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='264' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='tree_desc_s' size-in-bits='96' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='86' column='1' id='type-id-46'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='max_code' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='stat_desc' type-id='type-id-52' visibility='default' filepath='src.d/deflate.h' line='89' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='z_stream_s' size-in-bits='448' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='86' column='1' id='type-id-53'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='avail_in' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='total_in' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='next_out' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='avail_out' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='92' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='total_out' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='msg' type-id='type-id-54' visibility='default' filepath='src.d/zlib.h' line='95' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='state' type-id='type-id-55' visibility='default' filepath='src.d/zlib.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='zalloc' type-id='type-id-56' visibility='default' filepath='src.d/zlib.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='zfree' type-id='type-id-57' visibility='default' filepath='src.d/zlib.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='opaque' type-id='type-id-58' visibility='default' filepath='src.d/zlib.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='data_type' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='adler' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='reserved' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='105' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='IPos' type-id='type-id-9' filepath='src.d/deflate.h' line='94' column='1' id='type-id-45'/>
+ <typedef-decl name='Pos' type-id='type-id-50' filepath='src.d/deflate.h' line='92' column='1' id='type-id-59'/>
+ <typedef-decl name='Posf' type-id='type-id-59' filepath='src.d/deflate.h' line='93' column='1' id='type-id-60'/>
+ <typedef-decl name='alloc_func' type-id='type-id-61' filepath='src.d/zlib.h' line='81' column='1' id='type-id-56'/>
+ <typedef-decl name='charf' type-id='type-id-28' filepath='./zconf.h' line='408' column='1' id='type-id-62'/>
+ <typedef-decl name='ct_data' type-id='type-id-29' filepath='src.d/deflate.h' line='77' column='1' id='type-id-63'/>
+ <typedef-decl name='deflate_state' type-id='type-id-41' filepath='src.d/deflate.h' line='271' column='1' id='type-id-64'/>
+ <typedef-decl name='free_func' type-id='type-id-65' filepath='src.d/zlib.h' line='82' column='1' id='type-id-57'/>
+ <typedef-decl name='gz_header' type-id='type-id-40' filepath='src.d/zlib.h' line='129' column='1' id='type-id-66'/>
+ <typedef-decl name='gz_headerp' type-id='type-id-67' filepath='src.d/zlib.h' line='131' column='1' id='type-id-43'/>
+ <typedef-decl name='uch' type-id='type-id-2' filepath='src.d/zutil.h' line='39' column='1' id='type-id-68'/>
+ <typedef-decl name='uchf' type-id='type-id-68' filepath='src.d/zutil.h' line='40' column='1' id='type-id-69'/>
+ <typedef-decl name='ulg' type-id='type-id-12' filepath='src.d/zutil.h' line='43' column='1' id='type-id-42'/>
+ <typedef-decl name='ush' type-id='type-id-70' filepath='src.d/zutil.h' line='41' column='1' id='type-id-50'/>
+ <typedef-decl name='z_stream' type-id='type-id-53' filepath='src.d/zlib.h' line='106' column='1' id='type-id-71'/>
+ <typedef-decl name='z_streamp' type-id='type-id-72' filepath='src.d/zlib.h' line='108' column='1' id='type-id-21'/>
+ <array-type-def dimensions='1' type-id='type-id-68' size-in-bits='4584' id='type-id-48'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='73' column='1' id='type-id-39'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='74' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='75' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='69' column='1' id='type-id-38'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='70' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='71' column='1'/>
+ </data-member>
+ </union-decl>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-70'/>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='256' id='type-id-47'>
+ <subrange length='16' lower-bound='0' upper-bound='15' type-id='type-id-9' id='type-id-73'/>
+ </array-type-def>
+ <pointer-type-def type-id='type-id-4' size-in-bits='32' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-60' size-in-bits='32' id='type-id-44'/>
+ <pointer-type-def type-id='type-id-28' size-in-bits='32' id='type-id-54'/>
+ <pointer-type-def type-id='type-id-62' size-in-bits='32' id='type-id-74'/>
+ <qualified-type-def type-id='type-id-28' const='yes' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-75' size-in-bits='32' id='type-id-22'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='32' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-64' size-in-bits='32' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-66' size-in-bits='32' id='type-id-67'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='32' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='32' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-78' size-in-bits='32' id='type-id-61'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='32' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-69' size-in-bits='32' id='type-id-49'/>
+ <pointer-type-def type-id='type-id-9' size-in-bits='32' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-81' size-in-bits='32' id='type-id-65'/>
+ <pointer-type-def type-id='type-id-71' size-in-bits='32' id='type-id-72'/>
+ <qualified-type-def type-id='type-id-82' const='yes' id='type-id-83'/>
+ <pointer-type-def type-id='type-id-83' size-in-bits='32' id='type-id-52'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-84'/>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-58'/>
+ <function-decl name='memcpy' filepath='/usr/powerpc-linux-gnu/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/powerpc-linux-gnu/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='deflateInit2_' mangled-name='deflateInit2_' filepath='src.d/deflate.c' line='237' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateInit2_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='239' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='240' column='1'/>
+ <parameter type-id='type-id-20' name='method' filepath='src.d/deflate.c' line='241' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/deflate.c' line='242' column='1'/>
+ <parameter type-id='type-id-20' name='memLevel' filepath='src.d/deflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/deflate.c' line='245' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/deflate.c' line='246' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetDictionary' mangled-name='deflateSetDictionary' filepath='src.d/deflate.c' line='412' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='413' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/deflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-11' name='dictLength' filepath='src.d/deflate.c' line='415' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateGetDictionary' mangled-name='deflateGetDictionary' filepath='src.d/deflate.c' line='481' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateGetDictionary@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='482' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/deflate.c' line='483' column='1'/>
+ <parameter type-id='type-id-79' name='dictLength' filepath='src.d/deflate.c' line='484' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateResetKeep' mangled-name='deflateResetKeep' filepath='src.d/deflate.c' line='503' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='504' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateReset' mangled-name='deflateReset' filepath='src.d/deflate.c' line='541' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateReset'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='542' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetHeader' mangled-name='deflateSetHeader' filepath='src.d/deflate.c' line='553' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateSetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='554' column='1'/>
+ <parameter type-id='type-id-43' name='head' filepath='src.d/deflate.c' line='555' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePending' mangled-name='deflatePending' filepath='src.d/deflate.c' line='564' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflatePending@@ZLIB_1.2.5.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='567' column='1'/>
+ <parameter type-id='type-id-80' name='pending' filepath='src.d/deflate.c' line='565' column='1'/>
+ <parameter type-id='type-id-77' name='bits' filepath='src.d/deflate.c' line='566' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePrime' mangled-name='deflatePrime' filepath='src.d/deflate.c' line='578' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflatePrime@@ZLIB_1.2.0.8'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='579' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/deflate.c' line='580' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/deflate.c' line='581' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateParams' mangled-name='deflateParams' filepath='src.d/deflate.c' line='605' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateParams'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='606' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='607' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='608' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateTune' mangled-name='deflateTune' filepath='src.d/deflate.c' line='654' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateTune@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='655' column='1'/>
+ <parameter type-id='type-id-20' name='good_length' filepath='src.d/deflate.c' line='656' column='1'/>
+ <parameter type-id='type-id-20' name='max_lazy' filepath='src.d/deflate.c' line='657' column='1'/>
+ <parameter type-id='type-id-20' name='nice_length' filepath='src.d/deflate.c' line='658' column='1'/>
+ <parameter type-id='type-id-20' name='max_chain' filepath='src.d/deflate.c' line='659' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateBound' mangled-name='deflateBound' filepath='src.d/deflate.c' line='696' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='697' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/deflate.c' line='698' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflateCopy' mangled-name='deflateCopy' filepath='src.d/deflate.c' line='1156' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateCopy'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/deflate.c' line='1157' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/deflate.c' line='1158' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <typedef-decl name='static_tree_desc' type-id='type-id-84' filepath='src.d/deflate.h' line='84' column='1' id='type-id-82'/>
+ <function-decl name='_tr_init' filepath='src.d/deflate.h' line='294' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_flush_block' filepath='src.d/deflate.h' line='296' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_flush_bits' filepath='src.d/deflate.h' line='298' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_align' filepath='src.d/deflate.h' line='299' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='_tr_stored_block' filepath='src.d/deflate.h' line='300' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-76'/>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='crc32' filepath='src.d/zlib.h' line='1727' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-13'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zcalloc' filepath='src.d/zutil.h' line='261' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-58'/>
+ </function-decl>
+ <function-decl name='zcfree' filepath='src.d/zutil.h' line='263' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-58'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <type-decl name='void' id='type-id-86'/>
+ <pointer-type-def type-id='type-id-86' id='type-id-85'/>
+ <function-type size-in-bits='32' id='type-id-81'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-58'/>
+ <return type-id='type-id-86'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-78'>
+ <parameter type-id='type-id-58'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-58'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzclose.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gzFile_s' size-in-bits='128' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='1834' column='1' id='type-id-87'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-9' visibility='default' filepath='src.d/zlib.h' line='1835' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='next' type-id='type-id-88' visibility='default' filepath='src.d/zlib.h' line='1836' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pos' type-id='type-id-7' visibility='default' filepath='src.d/zlib.h' line='1837' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gzFile' type-id='type-id-89' filepath='src.d/zlib.h' line='1302' column='1' id='type-id-90'/>
+ <pointer-type-def type-id='type-id-87' size-in-bits='32' id='type-id-89'/>
+ <function-decl name='gzclose' mangled-name='gzclose' filepath='src.d/gzclose.c' line='11' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzclose'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzclose.c' line='12' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_r' filepath='src.d/zlib.h' line='1644' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-90'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_w' filepath='src.d/zlib.h' line='1645' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-90'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='snprintf' filepath='/usr/powerpc-linux-gnu/include/stdio.h' line='385' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-54'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/powerpc-linux-gnu/include/stdlib.h' line='672' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='free' filepath='/usr/powerpc-linux-gnu/include/stdlib.h' line='687' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/powerpc-linux-gnu/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/powerpc-linux-gnu/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='gzopen' mangled-name='gzopen' filepath='src.d/gzlib.c' line='272' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzopen'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='273' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='274' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzopen64' mangled-name='gzopen64' filepath='src.d/gzlib.c' line='280' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzopen64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='281' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='282' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzdopen' mangled-name='gzdopen' filepath='src.d/gzlib.c' line='288' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzdopen'>
+ <parameter type-id='type-id-20' name='fd' filepath='src.d/gzlib.c' line='289' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='290' column='1'/>
+ <return type-id='type-id-90'/>
+ </function-decl>
+ <function-decl name='gzbuffer' mangled-name='gzbuffer' filepath='src.d/gzlib.c' line='318' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzbuffer@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='319' column='1'/>
+ <parameter type-id='type-id-9' name='size' filepath='src.d/gzlib.c' line='320' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzrewind' mangled-name='gzrewind' filepath='src.d/gzlib.c' line='345' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzrewind'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='346' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzseek64' mangled-name='gzseek64' filepath='src.d/gzlib.c' line='368' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzseek64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='369' column='1'/>
+ <parameter type-id='type-id-7' name='offset' filepath='src.d/gzlib.c' line='370' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='371' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzseek' mangled-name='gzseek' filepath='src.d/gzlib.c' line='445' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzseek'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='446' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='src.d/gzlib.c' line='447' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='448' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gztell64' mangled-name='gztell64' filepath='src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gztell64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='458' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gztell' mangled-name='gztell' filepath='src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gztell'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='475' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzoffset64' mangled-name='gzoffset64' filepath='src.d/gzlib.c' line='484' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzoffset64@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='485' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzoffset' mangled-name='gzoffset' filepath='src.d/gzlib.c' line='507' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzoffset@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='508' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzeof' mangled-name='gzeof' filepath='src.d/gzlib.c' line='517' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzeof'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='518' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzerror' mangled-name='gzerror' filepath='src.d/gzlib.c' line='534' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzerror'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='535' column='1'/>
+ <parameter type-id='type-id-77' name='errnum' filepath='src.d/gzlib.c' line='536' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclearerr' mangled-name='gzclearerr' filepath='src.d/gzlib.c' line='555' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzclearerr@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzlib.c' line='556' column='1'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <type-decl name='variadic parameter type' id='type-id-91'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1344' is-struct='yes' naming-typedef-id='type-id-92' visibility='default' filepath='src.d/gzguts.h' line='170' column='1' id='type-id-93'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='172' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='mode' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='fd' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='path' type-id='type-id-54' visibility='default' filepath='src.d/gzguts.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='size' type-id='type-id-9' visibility='default' filepath='src.d/gzguts.h' line='180' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='want' type-id='type-id-9' visibility='default' filepath='src.d/gzguts.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='in' type-id='type-id-88' visibility='default' filepath='src.d/gzguts.h' line='182' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='out' type-id='type-id-88' visibility='default' filepath='src.d/gzguts.h' line='183' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='direct' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='184' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='how' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='start' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='eof' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='past' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='192' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='reset' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='193' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='skip' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='195' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='seek' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='196' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='err' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='msg' type-id='type-id-54' visibility='default' filepath='src.d/gzguts.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strm' type-id='type-id-71' visibility='default' filepath='src.d/gzguts.h' line='201' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__ssize_t' type-id='type-id-20' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='194' column='1' id='type-id-94'/>
+ <typedef-decl name='gz_state' type-id='type-id-93' filepath='src.d/gzguts.h' line='202' column='1' id='type-id-92'/>
+ <typedef-decl name='gz_statep' type-id='type-id-95' filepath='src.d/gzguts.h' line='203' column='1' id='type-id-96'/>
+ <typedef-decl name='ssize_t' type-id='type-id-94' filepath='/usr/powerpc-linux-gnu/include/sys/types.h' line='108' column='1' id='type-id-97'/>
+ <pointer-type-def type-id='type-id-92' size-in-bits='32' id='type-id-95'/>
+ <typedef-decl name='voidp' type-id='type-id-85' filepath='./zconf.h' line='416' column='1' id='type-id-98'/>
+ <function-decl name='__errno_location' filepath='/usr/powerpc-linux-gnu/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-77'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/powerpc-linux-gnu/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/powerpc-linux-gnu/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-54'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/powerpc-linux-gnu/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='read' filepath='/usr/powerpc-linux-gnu/include/unistd.h' line='371' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-97'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='src.d/gzguts.h' line='206' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='gzread' mangled-name='gzread' filepath='src.d/gzread.c' line='373' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzread'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='374' column='1'/>
+ <parameter type-id='type-id-98' name='buf' filepath='src.d/gzread.c' line='375' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='src.d/gzread.c' line='376' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfread' mangled-name='gzfread' filepath='src.d/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzfread@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-98' name='buf' filepath='src.d/gzread.c' line='410' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzread.c' line='411' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzread.c' line='412' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='413' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzgetc' mangled-name='gzgetc' filepath='src.d/gzread.c' line='445' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgetc'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='446' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgetc_' mangled-name='gzgetc_' filepath='src.d/gzread.c' line='472' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgetc_@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='473' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzungetc' mangled-name='gzungetc' filepath='src.d/gzread.c' line='479' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzungetc@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzread.c' line='480' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='481' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgets' mangled-name='gzgets' filepath='src.d/gzread.c' line='539' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgets'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='540' column='1'/>
+ <parameter type-id='type-id-54' name='buf' filepath='src.d/gzread.c' line='541' column='1'/>
+ <parameter type-id='type-id-20' name='len' filepath='src.d/gzread.c' line='542' column='1'/>
+ <return type-id='type-id-54'/>
+ </function-decl>
+ <function-decl name='gzdirect' mangled-name='gzdirect' filepath='src.d/gzread.c' line='603' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzdirect@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzread.c' line='604' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate' filepath='src.d/zlib.h' line='400' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateEnd' filepath='src.d/zlib.h' line='520' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset' filepath='src.d/zlib.h' line='959' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit2_' filepath='src.d/zlib.h' line='1789' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='__va_list_tag' size-in-bits='96' is-struct='yes' visibility='default' id='type-id-99'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='gpr' type-id='type-id-2' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='fpr' type-id='type-id-2' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='reserved' type-id='type-id-70' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='overflow_arg_area' type-id='type-id-85' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='reg_save_area' type-id='type-id-85' visibility='default'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-99' size-in-bits='32' id='type-id-100'/>
+ <typedef-decl name='voidpc' type-id='type-id-85' filepath='./zconf.h' line='414' column='1' id='type-id-101'/>
+ <function-decl name='vsnprintf' filepath='/usr/powerpc-linux-gnu/include/stdio.h' line='389' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-54'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-100'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='memmove' filepath='/usr/powerpc-linux-gnu/include/string.h' line='47' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/powerpc-linux-gnu/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-97'/>
+ </function-decl>
+ <function-decl name='gzwrite' mangled-name='gzwrite' filepath='src.d/gzwrite.c' line='255' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzwrite'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='256' column='1'/>
+ <parameter type-id='type-id-101' name='buf' filepath='src.d/gzwrite.c' line='257' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfwrite' mangled-name='gzfwrite' filepath='src.d/gzwrite.c' line='283' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzfwrite@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-101' name='buf' filepath='src.d/gzwrite.c' line='284' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzwrite.c' line='285' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzwrite.c' line='286' column='1'/>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzputc' mangled-name='gzputc' filepath='src.d/gzwrite.c' line='313' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzputc'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='314' column='1'/>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzwrite.c' line='315' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzputs' mangled-name='gzputs' filepath='src.d/gzwrite.c' line='361' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzputs'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='362' column='1'/>
+ <parameter type-id='type-id-22' name='s' filepath='src.d/gzwrite.c' line='363' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzvprintf' mangled-name='gzvprintf' filepath='src.d/gzwrite.c' line='391' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzvprintf@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-100' name='va' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzprintf' mangled-name='gzprintf' filepath='src.d/gzwrite.c' line='463' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzprintf'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzflush' mangled-name='gzflush' filepath='src.d/gzwrite.c' line='565' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzflush'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='566' column='1'/>
+ <parameter type-id='type-id-20' name='flush' filepath='src.d/gzwrite.c' line='567' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzsetparams' mangled-name='gzsetparams' filepath='src.d/gzwrite.c' line='597' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzsetparams'>
+ <parameter type-id='type-id-90' name='file' filepath='src.d/gzwrite.c' line='598' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/gzwrite.c' line='599' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/gzwrite.c' line='600' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <enum-decl name='codetype' naming-typedef-id='type-id-102' filepath='src.d/inftrees.h' line='54' column='1' id='type-id-103'>
+ <underlying-type type-id='type-id-104'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-105' visibility='default' filepath='src.d/inftrees.h' line='24' column='1' id='type-id-106'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-70' visibility='default' filepath='src.d/inftrees.h' line='27' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-106' filepath='src.d/inftrees.h' line='28' column='1' id='type-id-105'/>
+ <typedef-decl name='codetype' type-id='type-id-103' filepath='src.d/inftrees.h' line='58' column='1' id='type-id-102'/>
+ <typedef-decl name='in_func' type-id='type-id-107' filepath='src.d/zlib.h' line='1094' column='1' id='type-id-108'/>
+ <typedef-decl name='out_func' type-id='type-id-109' filepath='src.d/zlib.h' line='1096' column='1' id='type-id-110'/>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-104'/>
+ <pointer-type-def type-id='type-id-105' size-in-bits='32' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-111' size-in-bits='32' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-113' size-in-bits='32' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='32' id='type-id-88'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='32' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-115' size-in-bits='32' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='32' id='type-id-116'/>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-117'/>
+ <function-decl name='inflateBackInit_' mangled-name='inflateBackInit_' filepath='src.d/infback.c' line='28' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBackInit_@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='29' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/infback.c' line='30' column='1'/>
+ <parameter type-id='type-id-88' name='window' filepath='src.d/infback.c' line='31' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/infback.c' line='32' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/infback.c' line='33' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBack' mangled-name='inflateBack' filepath='src.d/infback.c' line='251' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBack@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='252' column='1'/>
+ <parameter type-id='type-id-108' name='in' filepath='src.d/infback.c' line='253' column='1'/>
+ <parameter type-id='type-id-85' name='in_desc' filepath='src.d/infback.c' line='254' column='1'/>
+ <parameter type-id='type-id-110' name='out' filepath='src.d/infback.c' line='255' column='1'/>
+ <parameter type-id='type-id-85' name='out_desc' filepath='src.d/infback.c' line='256' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBackEnd' mangled-name='inflateBackEnd' filepath='src.d/infback.c' line='635' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBackEnd@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='636' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate_fast' filepath='src.d/inffast.h' line='11' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='inflate_table' filepath='src.d/inftrees.h' line='60' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-102'/>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-112'/>
+ <parameter type-id='type-id-80'/>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-113'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-88'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-115'>
+ <parameter type-id='type-id-85'/>
+ <parameter type-id='type-id-114'/>
+ <return type-id='type-id-9'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpf' type-id='type-id-85' filepath='./zconf.h' line='415' column='1' id='type-id-118'/>
+ <function-decl name='inflateResetKeep' mangled-name='inflateResetKeep' filepath='src.d/inflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='120' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset2' mangled-name='inflateReset2' filepath='src.d/inflate.c' line='158' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateReset2@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='159' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/inflate.c' line='160' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit_' mangled-name='inflateInit_' filepath='src.d/inflate.c' line='242' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateInit_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/inflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/inflate.c' line='245' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflatePrime' mangled-name='inflatePrime' filepath='src.d/inflate.c' line='250' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflatePrime@@ZLIB_1.2.2.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='251' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/inflate.c' line='252' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/inflate.c' line='253' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetDictionary' mangled-name='inflateGetDictionary' filepath='src.d/inflate.c' line='1318' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateGetDictionary@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1319' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-79' name='dictLength' filepath='src.d/inflate.c' line='1321' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSetDictionary' mangled-name='inflateSetDictionary' filepath='src.d/inflate.c' line='1341' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1342' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/inflate.c' line='1343' column='1'/>
+ <parameter type-id='type-id-11' name='dictLength' filepath='src.d/inflate.c' line='1344' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetHeader' mangled-name='inflateGetHeader' filepath='src.d/inflate.c' line='1376' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateGetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1377' column='1'/>
+ <parameter type-id='type-id-43' name='head' filepath='src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSync' mangled-name='inflateSync' filepath='src.d/inflate.c' line='1427' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSync'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1428' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSyncPoint' mangled-name='inflateSyncPoint' filepath='src.d/inflate.c' line='1485' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSyncPoint'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1486' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateCopy' mangled-name='inflateCopy' filepath='src.d/inflate.c' line='1495' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateCopy@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/inflate.c' line='1496' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/inflate.c' line='1497' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateUndermine' mangled-name='inflateUndermine' filepath='src.d/inflate.c' line='1542' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateUndermine@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1543' column='1'/>
+ <parameter type-id='type-id-20' name='subvert' filepath='src.d/inflate.c' line='1544' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateValidate' mangled-name='inflateValidate' filepath='src.d/inflate.c' line='1560' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateValidate@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1561' column='1'/>
+ <parameter type-id='type-id-20' name='check' filepath='src.d/inflate.c' line='1562' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateMark' mangled-name='inflateMark' filepath='src.d/inflate.c' line='1575' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateMark@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1576' column='1'/>
+ <return type-id='type-id-37'/>
+ </function-decl>
+ <function-decl name='inflateCodesUsed' mangled-name='inflateCodesUsed' filepath='src.d/inflate.c' line='1588' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateCodesUsed@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1589' column='1'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-119' size-in-bits='2048' id='type-id-120'>
+ <subrange length='256' lower-bound='0' upper-bound='255' type-id='type-id-9' id='type-id-121'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-119' size-in-bits='4096' id='type-id-122'>
+ <subrange length='512' lower-bound='0' upper-bound='511' type-id='type-id-9' id='type-id-123'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-119' size-in-bits='unknown' id='type-id-124'>
+ <subrange length='unknown' lower-bound='0' upper-bound='0' id='type-id-125'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-68' const='yes' id='type-id-119'/>
+ <var-decl name='_length_code' type-id='type-id-120' visibility='default' filepath='src.d/deflate.h' line='317' column='1'/>
+ <var-decl name='_dist_code' type-id='type-id-122' visibility='default' filepath='src.d/deflate.h' line='318' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-13' size-in-bits='32' id='type-id-126'/>
+ <function-decl name='uncompress2' mangled-name='uncompress2' filepath='src.d/uncompr.c' line='27' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='uncompress2@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='28' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='29' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='30' column='1'/>
+ <parameter type-id='type-id-126' name='sourceLen' filepath='src.d/uncompr.c' line='31' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='uncompress' mangled-name='uncompress' filepath='src.d/uncompr.c' line='86' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='uncompress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='87' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='88' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='89' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/uncompr.c' line='90' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-127' size-in-bits='320' id='type-id-128'>
+ <subrange length='10' lower-bound='0' upper-bound='9' type-id='type-id-9' id='type-id-129'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-54' const='yes' id='type-id-127'/>
+ <function-decl name='zlibVersion' mangled-name='zlibVersion' filepath='src.d/zutil.c' line='27' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibVersion'>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='zlibCompileFlags' mangled-name='zlibCompileFlags' filepath='src.d/zutil.c' line='32' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibCompileFlags@@ZLIB_1.2.0.2'>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zError' mangled-name='zError' filepath='src.d/zutil.c' line='135' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zError'>
+ <parameter type-id='type-id-20' name='err' filepath='src.d/zutil.c' line='136' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <var-decl name='z_errmsg' type-id='type-id-128' visibility='default' filepath='src.d/zutil.h' line='56' column='1'/>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc64-unknown-linux-gnu.abi b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc64-unknown-linux-gnu.abi
new file mode 100644
index 0000000000..34cbcdc593
--- /dev/null
+++ b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc64-unknown-linux-gnu.abi
@@ -0,0 +1,1275 @@
+<abi-corpus version='2.2' path='btmp1/libz.so.1.2.13' architecture='elf-powerpc-64' soname='libz.so.1'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='adler32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compressBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen64' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_op' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateCopy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateGetDictionary' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateParams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePending' version='ZLIB_1.2.5.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePrime' version='ZLIB_1.2.0.8' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateTune' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='get_crc_table' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzbuffer' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclearerr' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_r' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_w' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdirect' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzeof' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzerror' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzflush' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfread' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfwrite' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc_' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgets' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset64' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzprintf' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputs' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzread' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzrewind' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzsetparams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzungetc' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzvprintf' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzwrite' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBack' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackEnd' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackInit_' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCodesUsed' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCopy' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetDictionary' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateMark' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflatePrime' version='ZLIB_1.2.2.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset2' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSyncPoint' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateUndermine' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateValidate' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress2' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zError' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibCompileFlags' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibVersion' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <abi-instr address-size='64' path='src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-1'/>
+ <typedef-decl name='Byte' type-id='type-id-2' filepath='./zconf.h' line='397' column='1' id='type-id-3'/>
+ <typedef-decl name='Bytef' type-id='type-id-3' filepath='./zconf.h' line='406' column='1' id='type-id-4'/>
+ <typedef-decl name='__off64_t' type-id='type-id-1' filepath='/usr/powerpc64-linux-gnu/include/bits/types.h' line='153' column='1' id='type-id-5'/>
+ <typedef-decl name='__off_t' type-id='type-id-1' filepath='/usr/powerpc64-linux-gnu/include/bits/types.h' line='152' column='1' id='type-id-6'/>
+ <typedef-decl name='off64_t' type-id='type-id-5' filepath='/usr/powerpc64-linux-gnu/include/sys/types.h' line='92' column='1' id='type-id-7'/>
+ <typedef-decl name='off_t' type-id='type-id-6' filepath='/usr/powerpc64-linux-gnu/include/sys/types.h' line='85' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-9' filepath='/usr/lib/gcc-cross/powerpc64-linux-gnu/13/include/stddef.h' line='214' column='1' id='type-id-10'/>
+ <typedef-decl name='uInt' type-id='type-id-11' filepath='./zconf.h' line='399' column='1' id='type-id-12'/>
+ <typedef-decl name='uLong' type-id='type-id-9' filepath='./zconf.h' line='400' column='1' id='type-id-13'/>
+ <typedef-decl name='z_size_t' type-id='type-id-10' filepath='./zconf.h' line='251' column='1' id='type-id-14'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-11'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-4' const='yes' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-15' size-in-bits='64' id='type-id-16'/>
+ <function-decl name='adler32_z' mangled-name='adler32_z' filepath='src.d/adler32.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='64' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='65' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/adler32.c' line='66' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32' mangled-name='adler32' filepath='src.d/adler32.c' line='134' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='135' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='136' column='1'/>
+ <parameter type-id='type-id-12' name='len' filepath='src.d/adler32.c' line='137' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine' mangled-name='adler32_combine' filepath='src.d/adler32.c' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='173' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='174' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/adler32.c' line='175' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine64' mangled-name='adler32_combine64' filepath='src.d/adler32.c' line='180' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='181' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='182' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/adler32.c' line='183' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='uLongf' type-id='type-id-13' filepath='./zconf.h' line='411' column='1' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-18'/>
+ <function-decl name='compress2' mangled-name='compress2' filepath='src.d/compress.c' line='22' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compress2'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='23' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='24' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='26' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/compress.c' line='27' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compress' mangled-name='compress' filepath='src.d/compress.c' line='68' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='69' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='70' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='71' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='72' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compressBound' mangled-name='compressBound' filepath='src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compressBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='82' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflate' filepath='src.d/zlib.h' line='250' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateEnd' filepath='src.d/zlib.h' line='363' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateInit_' filepath='src.d/zlib.h' line='1781' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/crc32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='z_crc_t' type-id='type-id-11' filepath='./zconf.h' line='435' column='1' id='type-id-23'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-24'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-25'/>
+ <qualified-type-def type-id='type-id-23' const='yes' id='type-id-26'/>
+ <pointer-type-def type-id='type-id-26' size-in-bits='64' id='type-id-27'/>
+ <function-decl name='get_crc_table' mangled-name='get_crc_table' filepath='src.d/crc32.c' line='595' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_crc_table'>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='crc32_z' mangled-name='crc32_z' filepath='src.d/crc32.c' line='748' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-9' name='crc' filepath='src.d/crc32.c' line='749' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='750' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/crc32.c' line='751' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32' mangled-name='crc32' filepath='src.d/crc32.c' line='1072' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32'>
+ <parameter type-id='type-id-9' name='crc' filepath='src.d/crc32.c' line='1073' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='1074' column='1'/>
+ <parameter type-id='type-id-12' name='len' filepath='src.d/crc32.c' line='1075' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine64' mangled-name='crc32_combine64' filepath='src.d/crc32.c' line='1081' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1082' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1083' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1084' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine' mangled-name='crc32_combine' filepath='src.d/crc32.c' line='1093' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1094' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1095' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1096' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen64' mangled-name='crc32_combine_gen64' filepath='src.d/crc32.c' line='1102' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_gen64@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1103' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen' mangled-name='crc32_combine_gen' filepath='src.d/crc32.c' line='1112' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_gen@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1113' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_op' mangled-name='crc32_combine_op' filepath='src.d/crc32.c' line='1119' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_op@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1120' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1121' column='1'/>
+ <parameter type-id='type-id-13' name='op' filepath='src.d/crc32.c' line='1122' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-28'/>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1248' id='type-id-30'>
+ <subrange length='39' lower-bound='0' upper-bound='38' type-id='type-id-9' id='type-id-31'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='18336' id='type-id-32'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1952' id='type-id-34'>
+ <subrange length='61' lower-bound='0' upper-bound='60' type-id='type-id-9' id='type-id-35'/>
+ </array-type-def>
+ <type-decl name='int' size-in-bits='32' id='type-id-20'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-36'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='68' column='1' id='type-id-29'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-37' visibility='default' filepath='src.d/deflate.h' line='72' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-38' visibility='default' filepath='src.d/deflate.h' line='76' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='gz_header_s' size-in-bits='640' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='114' column='1' id='type-id-39'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='time' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='xflags' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='os' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='extra_len' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='extra_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='name' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='name_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='comment' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='comm_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='hcrc' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='done' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='127' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='internal_state' size-in-bits='47616' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='100' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='status' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_buf' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='pending_buf_size' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='pending_out' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='pending' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='wrap' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='gzhead' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='gzindex' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='method' type-id='type-id-3' visibility='default' filepath='src.d/deflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='last_flush' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='w_size' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='w_bits' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='w_mask' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='window' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='window_size' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='prev' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='head' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='140' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='ins_h' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='142' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='hash_size' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='143' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='hash_bits' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='144' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='hash_mask' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='hash_shift' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='147' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='block_start' type-id='type-id-1' visibility='default' filepath='src.d/deflate.h' line='154' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='match_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='159' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='prev_match' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='match_available' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='161' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1376'>
+ <var-decl name='strstart' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='162' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='match_start' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='163' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='lookahead' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='164' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='prev_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='max_chain_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='171' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='max_lazy_match' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1568'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1600'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1632'>
+ <var-decl name='good_match' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1664'>
+ <var-decl name='nice_match' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='194' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1696'>
+ <var-decl name='dyn_ltree' type-id='type-id-32' visibility='default' filepath='src.d/deflate.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20032'>
+ <var-decl name='dyn_dtree' type-id='type-id-34' visibility='default' filepath='src.d/deflate.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='21984'>
+ <var-decl name='bl_tree' type-id='type-id-30' visibility='default' filepath='src.d/deflate.h' line='200' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23232'>
+ <var-decl name='l_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23424'>
+ <var-decl name='d_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23616'>
+ <var-decl name='bl_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='204' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23808'>
+ <var-decl name='bl_count' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='206' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24064'>
+ <var-decl name='heap' type-id='type-id-36' visibility='default' filepath='src.d/deflate.h' line='209' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42400'>
+ <var-decl name='heap_len' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42432'>
+ <var-decl name='heap_max' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='211' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42464'>
+ <var-decl name='depth' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='216' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47104'>
+ <var-decl name='sym_buf' type-id='type-id-48' visibility='default' filepath='src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47168'>
+ <var-decl name='lit_bufsize' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='222' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47200'>
+ <var-decl name='sym_next' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='242' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47232'>
+ <var-decl name='sym_end' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='243' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47296'>
+ <var-decl name='opt_len' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='245' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47360'>
+ <var-decl name='static_len' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='246' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47424'>
+ <var-decl name='matches' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='247' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47456'>
+ <var-decl name='insert' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='248' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47488'>
+ <var-decl name='bi_buf' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='255' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47520'>
+ <var-decl name='bi_valid' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='259' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47552'>
+ <var-decl name='high_water' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='264' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='tree_desc_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='86' column='1' id='type-id-45'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='max_code' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='stat_desc' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='89' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='z_stream_s' size-in-bits='896' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='86' column='1' id='type-id-52'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='avail_in' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='total_in' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='next_out' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='avail_out' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='92' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total_out' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='msg' type-id='type-id-53' visibility='default' filepath='src.d/zlib.h' line='95' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='state' type-id='type-id-54' visibility='default' filepath='src.d/zlib.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='zalloc' type-id='type-id-55' visibility='default' filepath='src.d/zlib.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='zfree' type-id='type-id-56' visibility='default' filepath='src.d/zlib.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='opaque' type-id='type-id-57' visibility='default' filepath='src.d/zlib.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='data_type' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='adler' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='reserved' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='105' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='IPos' type-id='type-id-11' filepath='src.d/deflate.h' line='94' column='1' id='type-id-44'/>
+ <typedef-decl name='Pos' type-id='type-id-49' filepath='src.d/deflate.h' line='92' column='1' id='type-id-58'/>
+ <typedef-decl name='Posf' type-id='type-id-58' filepath='src.d/deflate.h' line='93' column='1' id='type-id-59'/>
+ <typedef-decl name='alloc_func' type-id='type-id-60' filepath='src.d/zlib.h' line='81' column='1' id='type-id-55'/>
+ <typedef-decl name='charf' type-id='type-id-28' filepath='./zconf.h' line='408' column='1' id='type-id-61'/>
+ <typedef-decl name='ct_data' type-id='type-id-29' filepath='src.d/deflate.h' line='77' column='1' id='type-id-62'/>
+ <typedef-decl name='deflate_state' type-id='type-id-40' filepath='src.d/deflate.h' line='271' column='1' id='type-id-63'/>
+ <typedef-decl name='free_func' type-id='type-id-64' filepath='src.d/zlib.h' line='82' column='1' id='type-id-56'/>
+ <typedef-decl name='gz_header' type-id='type-id-39' filepath='src.d/zlib.h' line='129' column='1' id='type-id-65'/>
+ <typedef-decl name='gz_headerp' type-id='type-id-66' filepath='src.d/zlib.h' line='131' column='1' id='type-id-42'/>
+ <typedef-decl name='uch' type-id='type-id-2' filepath='src.d/zutil.h' line='39' column='1' id='type-id-67'/>
+ <typedef-decl name='uchf' type-id='type-id-67' filepath='src.d/zutil.h' line='40' column='1' id='type-id-68'/>
+ <typedef-decl name='ulg' type-id='type-id-9' filepath='src.d/zutil.h' line='43' column='1' id='type-id-41'/>
+ <typedef-decl name='ush' type-id='type-id-69' filepath='src.d/zutil.h' line='41' column='1' id='type-id-49'/>
+ <typedef-decl name='z_stream' type-id='type-id-52' filepath='src.d/zlib.h' line='106' column='1' id='type-id-70'/>
+ <typedef-decl name='z_streamp' type-id='type-id-71' filepath='src.d/zlib.h' line='108' column='1' id='type-id-21'/>
+ <array-type-def dimensions='1' type-id='type-id-67' size-in-bits='4584' id='type-id-47'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='73' column='1' id='type-id-38'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='74' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='75' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='69' column='1' id='type-id-37'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='70' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='71' column='1'/>
+ </data-member>
+ </union-decl>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-69'/>
+ <array-type-def dimensions='1' type-id='type-id-49' size-in-bits='256' id='type-id-46'>
+ <subrange length='16' lower-bound='0' upper-bound='15' type-id='type-id-9' id='type-id-72'/>
+ </array-type-def>
+ <pointer-type-def type-id='type-id-4' size-in-bits='64' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-59' size-in-bits='64' id='type-id-43'/>
+ <pointer-type-def type-id='type-id-28' size-in-bits='64' id='type-id-53'/>
+ <pointer-type-def type-id='type-id-61' size-in-bits='64' id='type-id-73'/>
+ <qualified-type-def type-id='type-id-28' const='yes' id='type-id-74'/>
+ <pointer-type-def type-id='type-id-74' size-in-bits='64' id='type-id-22'/>
+ <pointer-type-def type-id='type-id-62' size-in-bits='64' id='type-id-50'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-65' size-in-bits='64' id='type-id-66'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-40' size-in-bits='64' id='type-id-54'/>
+ <pointer-type-def type-id='type-id-77' size-in-bits='64' id='type-id-60'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-68' size-in-bits='64' id='type-id-48'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-80' size-in-bits='64' id='type-id-64'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='64' id='type-id-71'/>
+ <qualified-type-def type-id='type-id-81' const='yes' id='type-id-82'/>
+ <pointer-type-def type-id='type-id-82' size-in-bits='64' id='type-id-51'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-83'/>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-57'/>
+ <function-decl name='memcpy' filepath='/usr/powerpc64-linux-gnu/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/powerpc64-linux-gnu/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='deflateInit2_' mangled-name='deflateInit2_' filepath='src.d/deflate.c' line='237' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateInit2_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='239' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='240' column='1'/>
+ <parameter type-id='type-id-20' name='method' filepath='src.d/deflate.c' line='241' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/deflate.c' line='242' column='1'/>
+ <parameter type-id='type-id-20' name='memLevel' filepath='src.d/deflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/deflate.c' line='245' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/deflate.c' line='246' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetDictionary' mangled-name='deflateSetDictionary' filepath='src.d/deflate.c' line='412' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='413' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/deflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-12' name='dictLength' filepath='src.d/deflate.c' line='415' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateGetDictionary' mangled-name='deflateGetDictionary' filepath='src.d/deflate.c' line='481' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateGetDictionary@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='482' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/deflate.c' line='483' column='1'/>
+ <parameter type-id='type-id-78' name='dictLength' filepath='src.d/deflate.c' line='484' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateResetKeep' mangled-name='deflateResetKeep' filepath='src.d/deflate.c' line='503' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='504' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateReset' mangled-name='deflateReset' filepath='src.d/deflate.c' line='541' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateReset'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='542' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetHeader' mangled-name='deflateSetHeader' filepath='src.d/deflate.c' line='553' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateSetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='554' column='1'/>
+ <parameter type-id='type-id-42' name='head' filepath='src.d/deflate.c' line='555' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePending' mangled-name='deflatePending' filepath='src.d/deflate.c' line='564' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflatePending@@ZLIB_1.2.5.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='567' column='1'/>
+ <parameter type-id='type-id-79' name='pending' filepath='src.d/deflate.c' line='565' column='1'/>
+ <parameter type-id='type-id-76' name='bits' filepath='src.d/deflate.c' line='566' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePrime' mangled-name='deflatePrime' filepath='src.d/deflate.c' line='578' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflatePrime@@ZLIB_1.2.0.8'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='579' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/deflate.c' line='580' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/deflate.c' line='581' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateParams' mangled-name='deflateParams' filepath='src.d/deflate.c' line='605' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateParams'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='606' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='607' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='608' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateTune' mangled-name='deflateTune' filepath='src.d/deflate.c' line='654' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateTune@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='655' column='1'/>
+ <parameter type-id='type-id-20' name='good_length' filepath='src.d/deflate.c' line='656' column='1'/>
+ <parameter type-id='type-id-20' name='max_lazy' filepath='src.d/deflate.c' line='657' column='1'/>
+ <parameter type-id='type-id-20' name='nice_length' filepath='src.d/deflate.c' line='658' column='1'/>
+ <parameter type-id='type-id-20' name='max_chain' filepath='src.d/deflate.c' line='659' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateBound' mangled-name='deflateBound' filepath='src.d/deflate.c' line='696' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='697' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/deflate.c' line='698' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflateCopy' mangled-name='deflateCopy' filepath='src.d/deflate.c' line='1156' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateCopy'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/deflate.c' line='1157' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/deflate.c' line='1158' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <typedef-decl name='static_tree_desc' type-id='type-id-83' filepath='src.d/deflate.h' line='84' column='1' id='type-id-81'/>
+ <function-decl name='_tr_init' filepath='src.d/deflate.h' line='294' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_flush_block' filepath='src.d/deflate.h' line='296' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_flush_bits' filepath='src.d/deflate.h' line='298' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_align' filepath='src.d/deflate.h' line='299' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_stored_block' filepath='src.d/deflate.h' line='300' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='crc32' filepath='src.d/zlib.h' line='1727' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-13'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zcalloc' filepath='src.d/zutil.h' line='261' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-57'/>
+ </function-decl>
+ <function-decl name='zcfree' filepath='src.d/zutil.h' line='263' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-57'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <type-decl name='void' id='type-id-85'/>
+ <pointer-type-def type-id='type-id-85' id='type-id-84'/>
+ <function-type size-in-bits='64' id='type-id-80'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-57'/>
+ <return type-id='type-id-85'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-77'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-12'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-57'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzclose.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gzFile_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='1834' column='1' id='type-id-86'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='1835' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='next' type-id='type-id-87' visibility='default' filepath='src.d/zlib.h' line='1836' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pos' type-id='type-id-7' visibility='default' filepath='src.d/zlib.h' line='1837' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gzFile' type-id='type-id-88' filepath='src.d/zlib.h' line='1302' column='1' id='type-id-89'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='64' id='type-id-88'/>
+ <function-decl name='gzclose' mangled-name='gzclose' filepath='src.d/gzclose.c' line='11' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzclose'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzclose.c' line='12' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_r' filepath='src.d/zlib.h' line='1644' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_w' filepath='src.d/zlib.h' line='1645' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='open' filepath='/usr/powerpc64-linux-gnu/include/fcntl.h' line='209' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='snprintf' filepath='/usr/powerpc64-linux-gnu/include/stdio.h' line='385' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-53'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/powerpc64-linux-gnu/include/stdlib.h' line='672' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='free' filepath='/usr/powerpc64-linux-gnu/include/stdlib.h' line='687' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/powerpc64-linux-gnu/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/powerpc64-linux-gnu/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-5'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='gzopen' mangled-name='gzopen' filepath='src.d/gzlib.c' line='272' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzopen'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='273' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='274' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzopen64' mangled-name='gzopen64' filepath='src.d/gzlib.c' line='280' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzopen64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='281' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='282' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzdopen' mangled-name='gzdopen' filepath='src.d/gzlib.c' line='288' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzdopen'>
+ <parameter type-id='type-id-20' name='fd' filepath='src.d/gzlib.c' line='289' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='290' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzbuffer' mangled-name='gzbuffer' filepath='src.d/gzlib.c' line='318' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzbuffer@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='319' column='1'/>
+ <parameter type-id='type-id-11' name='size' filepath='src.d/gzlib.c' line='320' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzrewind' mangled-name='gzrewind' filepath='src.d/gzlib.c' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzrewind'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='346' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzseek64' mangled-name='gzseek64' filepath='src.d/gzlib.c' line='368' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzseek64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='369' column='1'/>
+ <parameter type-id='type-id-7' name='offset' filepath='src.d/gzlib.c' line='370' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='371' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzseek' mangled-name='gzseek' filepath='src.d/gzlib.c' line='445' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzseek'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='446' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='src.d/gzlib.c' line='447' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='448' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gztell64' mangled-name='gztell64' filepath='src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gztell64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='458' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gztell' mangled-name='gztell' filepath='src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gztell'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='475' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzoffset64' mangled-name='gzoffset64' filepath='src.d/gzlib.c' line='484' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzoffset64@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='485' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzoffset' mangled-name='gzoffset' filepath='src.d/gzlib.c' line='507' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzoffset@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='508' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzeof' mangled-name='gzeof' filepath='src.d/gzlib.c' line='517' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzeof'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='518' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzerror' mangled-name='gzerror' filepath='src.d/gzlib.c' line='534' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzerror'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='535' column='1'/>
+ <parameter type-id='type-id-76' name='errnum' filepath='src.d/gzlib.c' line='536' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclearerr' mangled-name='gzclearerr' filepath='src.d/gzlib.c' line='555' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzclearerr@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='556' column='1'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <type-decl name='variadic parameter type' id='type-id-90'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1920' is-struct='yes' naming-typedef-id='type-id-91' visibility='default' filepath='src.d/gzguts.h' line='170' column='1' id='type-id-92'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-86' visibility='default' filepath='src.d/gzguts.h' line='172' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='mode' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='fd' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='path' type-id='type-id-53' visibility='default' filepath='src.d/gzguts.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='size' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='180' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='want' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='in' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='182' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='out' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='183' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='direct' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='184' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='how' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='start' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='eof' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='past' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='192' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reset' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='193' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='skip' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='195' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='seek' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='196' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='err' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='msg' type-id='type-id-53' visibility='default' filepath='src.d/gzguts.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='strm' type-id='type-id-70' visibility='default' filepath='src.d/gzguts.h' line='201' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__ssize_t' type-id='type-id-1' filepath='/usr/powerpc64-linux-gnu/include/bits/types.h' line='194' column='1' id='type-id-93'/>
+ <typedef-decl name='gz_state' type-id='type-id-92' filepath='src.d/gzguts.h' line='202' column='1' id='type-id-91'/>
+ <typedef-decl name='gz_statep' type-id='type-id-94' filepath='src.d/gzguts.h' line='203' column='1' id='type-id-95'/>
+ <typedef-decl name='ssize_t' type-id='type-id-93' filepath='/usr/powerpc64-linux-gnu/include/sys/types.h' line='108' column='1' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-91' size-in-bits='64' id='type-id-94'/>
+ <typedef-decl name='voidp' type-id='type-id-84' filepath='./zconf.h' line='416' column='1' id='type-id-97'/>
+ <function-decl name='__errno_location' filepath='/usr/powerpc64-linux-gnu/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-76'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/powerpc64-linux-gnu/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/powerpc64-linux-gnu/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-53'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/powerpc64-linux-gnu/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='read' filepath='/usr/powerpc64-linux-gnu/include/unistd.h' line='371' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-96'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='src.d/gzguts.h' line='206' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='gzread' mangled-name='gzread' filepath='src.d/gzread.c' line='373' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzread'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='374' column='1'/>
+ <parameter type-id='type-id-97' name='buf' filepath='src.d/gzread.c' line='375' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzread.c' line='376' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfread' mangled-name='gzfread' filepath='src.d/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzfread@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-97' name='buf' filepath='src.d/gzread.c' line='410' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzread.c' line='411' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzread.c' line='412' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='413' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzgetc' mangled-name='gzgetc' filepath='src.d/gzread.c' line='445' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgetc'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='446' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgetc_' mangled-name='gzgetc_' filepath='src.d/gzread.c' line='472' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgetc_@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='473' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzungetc' mangled-name='gzungetc' filepath='src.d/gzread.c' line='479' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzungetc@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzread.c' line='480' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='481' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgets' mangled-name='gzgets' filepath='src.d/gzread.c' line='539' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgets'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='540' column='1'/>
+ <parameter type-id='type-id-53' name='buf' filepath='src.d/gzread.c' line='541' column='1'/>
+ <parameter type-id='type-id-20' name='len' filepath='src.d/gzread.c' line='542' column='1'/>
+ <return type-id='type-id-53'/>
+ </function-decl>
+ <function-decl name='gzdirect' mangled-name='gzdirect' filepath='src.d/gzread.c' line='603' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzdirect@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='604' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate' filepath='src.d/zlib.h' line='400' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateEnd' filepath='src.d/zlib.h' line='520' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset' filepath='src.d/zlib.h' line='959' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit2_' filepath='src.d/zlib.h' line='1789' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-53' filepath='/usr/lib/gcc-cross/powerpc64-linux-gnu/13/include/stdarg.h' line='40' column='1' id='type-id-98'/>
+ <typedef-decl name='va_list' type-id='type-id-98' filepath='/usr/lib/gcc-cross/powerpc64-linux-gnu/13/include/stdarg.h' line='103' column='1' id='type-id-99'/>
+ <typedef-decl name='voidpc' type-id='type-id-84' filepath='./zconf.h' line='414' column='1' id='type-id-100'/>
+ <function-decl name='vsnprintf' filepath='/usr/powerpc64-linux-gnu/include/stdio.h' line='389' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-53'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-53'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='memmove' filepath='/usr/powerpc64-linux-gnu/include/string.h' line='47' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/powerpc64-linux-gnu/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-96'/>
+ </function-decl>
+ <function-decl name='gzwrite' mangled-name='gzwrite' filepath='src.d/gzwrite.c' line='255' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzwrite'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='256' column='1'/>
+ <parameter type-id='type-id-100' name='buf' filepath='src.d/gzwrite.c' line='257' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfwrite' mangled-name='gzfwrite' filepath='src.d/gzwrite.c' line='283' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzfwrite@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-100' name='buf' filepath='src.d/gzwrite.c' line='284' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzwrite.c' line='285' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzwrite.c' line='286' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzputc' mangled-name='gzputc' filepath='src.d/gzwrite.c' line='313' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzputc'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='314' column='1'/>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzwrite.c' line='315' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzputs' mangled-name='gzputs' filepath='src.d/gzwrite.c' line='361' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzputs'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='362' column='1'/>
+ <parameter type-id='type-id-22' name='s' filepath='src.d/gzwrite.c' line='363' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzvprintf' mangled-name='gzvprintf' filepath='src.d/gzwrite.c' line='391' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzvprintf@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-99' name='va' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzprintf' mangled-name='gzprintf' filepath='src.d/gzwrite.c' line='463' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzprintf'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzflush' mangled-name='gzflush' filepath='src.d/gzwrite.c' line='565' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzflush'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='566' column='1'/>
+ <parameter type-id='type-id-20' name='flush' filepath='src.d/gzwrite.c' line='567' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzsetparams' mangled-name='gzsetparams' filepath='src.d/gzwrite.c' line='597' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzsetparams'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='598' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/gzwrite.c' line='599' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/gzwrite.c' line='600' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <enum-decl name='codetype' naming-typedef-id='type-id-101' filepath='src.d/inftrees.h' line='54' column='1' id='type-id-102'>
+ <underlying-type type-id='type-id-103'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-104' visibility='default' filepath='src.d/inftrees.h' line='24' column='1' id='type-id-105'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-69' visibility='default' filepath='src.d/inftrees.h' line='27' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-105' filepath='src.d/inftrees.h' line='28' column='1' id='type-id-104'/>
+ <typedef-decl name='codetype' type-id='type-id-102' filepath='src.d/inftrees.h' line='58' column='1' id='type-id-101'/>
+ <typedef-decl name='in_func' type-id='type-id-106' filepath='src.d/zlib.h' line='1094' column='1' id='type-id-107'/>
+ <typedef-decl name='out_func' type-id='type-id-108' filepath='src.d/zlib.h' line='1096' column='1' id='type-id-109'/>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-103'/>
+ <pointer-type-def type-id='type-id-104' size-in-bits='64' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-110' size-in-bits='64' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-112' size-in-bits='64' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-87'/>
+ <pointer-type-def type-id='type-id-87' size-in-bits='64' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-114' size-in-bits='64' id='type-id-106'/>
+ <pointer-type-def type-id='type-id-69' size-in-bits='64' id='type-id-115'/>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-116'/>
+ <function-decl name='inflateBackInit_' mangled-name='inflateBackInit_' filepath='src.d/infback.c' line='28' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBackInit_@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='29' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/infback.c' line='30' column='1'/>
+ <parameter type-id='type-id-87' name='window' filepath='src.d/infback.c' line='31' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/infback.c' line='32' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/infback.c' line='33' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBack' mangled-name='inflateBack' filepath='src.d/infback.c' line='251' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBack@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='252' column='1'/>
+ <parameter type-id='type-id-107' name='in' filepath='src.d/infback.c' line='253' column='1'/>
+ <parameter type-id='type-id-84' name='in_desc' filepath='src.d/infback.c' line='254' column='1'/>
+ <parameter type-id='type-id-109' name='out' filepath='src.d/infback.c' line='255' column='1'/>
+ <parameter type-id='type-id-84' name='out_desc' filepath='src.d/infback.c' line='256' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBackEnd' mangled-name='inflateBackEnd' filepath='src.d/infback.c' line='635' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBackEnd@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='636' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate_fast' filepath='src.d/inffast.h' line='11' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='inflate_table' filepath='src.d/inftrees.h' line='60' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-101'/>
+ <parameter type-id='type-id-115'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-111'/>
+ <parameter type-id='type-id-79'/>
+ <parameter type-id='type-id-115'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-112'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-87'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-114'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-113'/>
+ <return type-id='type-id-11'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-117'/>
+ <function-decl name='inflateResetKeep' mangled-name='inflateResetKeep' filepath='src.d/inflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='120' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset2' mangled-name='inflateReset2' filepath='src.d/inflate.c' line='158' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateReset2@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='159' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/inflate.c' line='160' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit_' mangled-name='inflateInit_' filepath='src.d/inflate.c' line='242' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateInit_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/inflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/inflate.c' line='245' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflatePrime' mangled-name='inflatePrime' filepath='src.d/inflate.c' line='250' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflatePrime@@ZLIB_1.2.2.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='251' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/inflate.c' line='252' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/inflate.c' line='253' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetDictionary' mangled-name='inflateGetDictionary' filepath='src.d/inflate.c' line='1318' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateGetDictionary@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1319' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-78' name='dictLength' filepath='src.d/inflate.c' line='1321' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSetDictionary' mangled-name='inflateSetDictionary' filepath='src.d/inflate.c' line='1341' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1342' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/inflate.c' line='1343' column='1'/>
+ <parameter type-id='type-id-12' name='dictLength' filepath='src.d/inflate.c' line='1344' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetHeader' mangled-name='inflateGetHeader' filepath='src.d/inflate.c' line='1376' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateGetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1377' column='1'/>
+ <parameter type-id='type-id-42' name='head' filepath='src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSync' mangled-name='inflateSync' filepath='src.d/inflate.c' line='1427' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSync'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1428' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSyncPoint' mangled-name='inflateSyncPoint' filepath='src.d/inflate.c' line='1485' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSyncPoint'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1486' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateCopy' mangled-name='inflateCopy' filepath='src.d/inflate.c' line='1495' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateCopy@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/inflate.c' line='1496' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/inflate.c' line='1497' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateUndermine' mangled-name='inflateUndermine' filepath='src.d/inflate.c' line='1542' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateUndermine@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1543' column='1'/>
+ <parameter type-id='type-id-20' name='subvert' filepath='src.d/inflate.c' line='1544' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateValidate' mangled-name='inflateValidate' filepath='src.d/inflate.c' line='1560' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateValidate@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1561' column='1'/>
+ <parameter type-id='type-id-20' name='check' filepath='src.d/inflate.c' line='1562' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateMark' mangled-name='inflateMark' filepath='src.d/inflate.c' line='1575' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateMark@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1576' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='inflateCodesUsed' mangled-name='inflateCodesUsed' filepath='src.d/inflate.c' line='1588' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateCodesUsed@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1589' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='2048' id='type-id-119'>
+ <subrange length='256' lower-bound='0' upper-bound='255' type-id='type-id-9' id='type-id-120'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='4096' id='type-id-121'>
+ <subrange length='512' lower-bound='0' upper-bound='511' type-id='type-id-9' id='type-id-122'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='unknown' id='type-id-123'>
+ <subrange length='unknown' lower-bound='0' upper-bound='0' id='type-id-124'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-67' const='yes' id='type-id-118'/>
+ <var-decl name='_length_code' type-id='type-id-119' visibility='default' filepath='src.d/deflate.h' line='317' column='1'/>
+ <var-decl name='_dist_code' type-id='type-id-121' visibility='default' filepath='src.d/deflate.h' line='318' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-125'/>
+ <function-decl name='uncompress2' mangled-name='uncompress2' filepath='src.d/uncompr.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='uncompress2@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='28' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='29' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='30' column='1'/>
+ <parameter type-id='type-id-125' name='sourceLen' filepath='src.d/uncompr.c' line='31' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='uncompress' mangled-name='uncompress' filepath='src.d/uncompr.c' line='86' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='uncompress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='87' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='88' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='89' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/uncompr.c' line='90' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-126' size-in-bits='640' id='type-id-127'>
+ <subrange length='10' lower-bound='0' upper-bound='9' type-id='type-id-9' id='type-id-128'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-53' const='yes' id='type-id-126'/>
+ <function-decl name='zlibVersion' mangled-name='zlibVersion' filepath='src.d/zutil.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibVersion'>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='zlibCompileFlags' mangled-name='zlibCompileFlags' filepath='src.d/zutil.c' line='32' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibCompileFlags@@ZLIB_1.2.0.2'>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zError' mangled-name='zError' filepath='src.d/zutil.c' line='135' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zError'>
+ <parameter type-id='type-id-20' name='err' filepath='src.d/zutil.c' line='136' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <var-decl name='z_errmsg' type-id='type-id-127' visibility='default' filepath='src.d/zutil.h' line='56' column='1'/>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc64le-unknown-linux-gnu.abi b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc64le-unknown-linux-gnu.abi
new file mode 100644
index 0000000000..e78d9831cc
--- /dev/null
+++ b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-powerpc64le-unknown-linux-gnu.abi
@@ -0,0 +1,1275 @@
+<abi-corpus version='2.2' path='btmp1/libz.so.1.2.13' architecture='elf-powerpc-64' soname='libz.so.1'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='adler32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compressBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen64' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_op' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateCopy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateGetDictionary' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateParams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePending' version='ZLIB_1.2.5.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePrime' version='ZLIB_1.2.0.8' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateTune' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='get_crc_table' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzbuffer' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclearerr' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_r' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_w' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdirect' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzeof' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzerror' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzflush' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfread' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfwrite' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc_' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgets' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset64' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzprintf' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputs' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzread' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzrewind' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzsetparams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzungetc' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzvprintf' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzwrite' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBack' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackEnd' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackInit_' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCodesUsed' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCopy' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetDictionary' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateMark' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflatePrime' version='ZLIB_1.2.2.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset2' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSyncPoint' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateUndermine' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateValidate' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress2' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zError' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibCompileFlags' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibVersion' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <abi-instr address-size='64' path='src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-1'/>
+ <typedef-decl name='Byte' type-id='type-id-2' filepath='./zconf.h' line='397' column='1' id='type-id-3'/>
+ <typedef-decl name='Bytef' type-id='type-id-3' filepath='./zconf.h' line='406' column='1' id='type-id-4'/>
+ <typedef-decl name='__off64_t' type-id='type-id-1' filepath='/usr/powerpc64le-linux-gnu/include/bits/types.h' line='153' column='1' id='type-id-5'/>
+ <typedef-decl name='__off_t' type-id='type-id-1' filepath='/usr/powerpc64le-linux-gnu/include/bits/types.h' line='152' column='1' id='type-id-6'/>
+ <typedef-decl name='off64_t' type-id='type-id-5' filepath='/usr/powerpc64le-linux-gnu/include/sys/types.h' line='92' column='1' id='type-id-7'/>
+ <typedef-decl name='off_t' type-id='type-id-6' filepath='/usr/powerpc64le-linux-gnu/include/sys/types.h' line='85' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-9' filepath='/usr/lib/gcc-cross/powerpc64le-linux-gnu/13/include/stddef.h' line='214' column='1' id='type-id-10'/>
+ <typedef-decl name='uInt' type-id='type-id-11' filepath='./zconf.h' line='399' column='1' id='type-id-12'/>
+ <typedef-decl name='uLong' type-id='type-id-9' filepath='./zconf.h' line='400' column='1' id='type-id-13'/>
+ <typedef-decl name='z_size_t' type-id='type-id-10' filepath='./zconf.h' line='251' column='1' id='type-id-14'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-11'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-4' const='yes' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-15' size-in-bits='64' id='type-id-16'/>
+ <function-decl name='adler32_z' mangled-name='adler32_z' filepath='src.d/adler32.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='64' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='65' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/adler32.c' line='66' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32' mangled-name='adler32' filepath='src.d/adler32.c' line='134' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='135' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='136' column='1'/>
+ <parameter type-id='type-id-12' name='len' filepath='src.d/adler32.c' line='137' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine' mangled-name='adler32_combine' filepath='src.d/adler32.c' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='173' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='174' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/adler32.c' line='175' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine64' mangled-name='adler32_combine64' filepath='src.d/adler32.c' line='180' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='181' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='182' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/adler32.c' line='183' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='uLongf' type-id='type-id-13' filepath='./zconf.h' line='411' column='1' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-18'/>
+ <function-decl name='compress2' mangled-name='compress2' filepath='src.d/compress.c' line='22' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compress2'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='23' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='24' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='26' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/compress.c' line='27' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compress' mangled-name='compress' filepath='src.d/compress.c' line='68' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='69' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='70' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='71' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='72' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compressBound' mangled-name='compressBound' filepath='src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compressBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='82' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflate' filepath='src.d/zlib.h' line='250' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateEnd' filepath='src.d/zlib.h' line='363' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateInit_' filepath='src.d/zlib.h' line='1781' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/crc32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='z_crc_t' type-id='type-id-11' filepath='./zconf.h' line='435' column='1' id='type-id-23'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-24'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-25'/>
+ <qualified-type-def type-id='type-id-23' const='yes' id='type-id-26'/>
+ <pointer-type-def type-id='type-id-26' size-in-bits='64' id='type-id-27'/>
+ <function-decl name='get_crc_table' mangled-name='get_crc_table' filepath='src.d/crc32.c' line='595' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_crc_table'>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='crc32_z' mangled-name='crc32_z' filepath='src.d/crc32.c' line='748' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-9' name='crc' filepath='src.d/crc32.c' line='749' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='750' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/crc32.c' line='751' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32' mangled-name='crc32' filepath='src.d/crc32.c' line='1072' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32'>
+ <parameter type-id='type-id-9' name='crc' filepath='src.d/crc32.c' line='1073' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='1074' column='1'/>
+ <parameter type-id='type-id-12' name='len' filepath='src.d/crc32.c' line='1075' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine64' mangled-name='crc32_combine64' filepath='src.d/crc32.c' line='1081' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1082' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1083' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1084' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine' mangled-name='crc32_combine' filepath='src.d/crc32.c' line='1093' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1094' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1095' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1096' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen64' mangled-name='crc32_combine_gen64' filepath='src.d/crc32.c' line='1102' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_gen64@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1103' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen' mangled-name='crc32_combine_gen' filepath='src.d/crc32.c' line='1112' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_gen@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1113' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_op' mangled-name='crc32_combine_op' filepath='src.d/crc32.c' line='1119' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_op@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1120' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1121' column='1'/>
+ <parameter type-id='type-id-13' name='op' filepath='src.d/crc32.c' line='1122' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-28'/>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1248' id='type-id-30'>
+ <subrange length='39' lower-bound='0' upper-bound='38' type-id='type-id-9' id='type-id-31'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='18336' id='type-id-32'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1952' id='type-id-34'>
+ <subrange length='61' lower-bound='0' upper-bound='60' type-id='type-id-9' id='type-id-35'/>
+ </array-type-def>
+ <type-decl name='int' size-in-bits='32' id='type-id-20'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-36'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='68' column='1' id='type-id-29'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-37' visibility='default' filepath='src.d/deflate.h' line='72' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-38' visibility='default' filepath='src.d/deflate.h' line='76' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='gz_header_s' size-in-bits='640' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='114' column='1' id='type-id-39'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='time' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='xflags' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='os' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='extra_len' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='extra_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='name' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='name_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='comment' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='comm_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='hcrc' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='done' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='127' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='internal_state' size-in-bits='47616' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='100' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='status' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_buf' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='pending_buf_size' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='pending_out' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='pending' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='wrap' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='gzhead' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='gzindex' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='method' type-id='type-id-3' visibility='default' filepath='src.d/deflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='last_flush' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='w_size' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='w_bits' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='w_mask' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='window' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='window_size' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='prev' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='head' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='140' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='ins_h' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='142' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='hash_size' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='143' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='hash_bits' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='144' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='hash_mask' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='hash_shift' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='147' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='block_start' type-id='type-id-1' visibility='default' filepath='src.d/deflate.h' line='154' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='match_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='159' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='prev_match' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='match_available' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='161' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1376'>
+ <var-decl name='strstart' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='162' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='match_start' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='163' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='lookahead' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='164' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='prev_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='max_chain_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='171' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='max_lazy_match' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1568'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1600'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1632'>
+ <var-decl name='good_match' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1664'>
+ <var-decl name='nice_match' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='194' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1696'>
+ <var-decl name='dyn_ltree' type-id='type-id-32' visibility='default' filepath='src.d/deflate.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20032'>
+ <var-decl name='dyn_dtree' type-id='type-id-34' visibility='default' filepath='src.d/deflate.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='21984'>
+ <var-decl name='bl_tree' type-id='type-id-30' visibility='default' filepath='src.d/deflate.h' line='200' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23232'>
+ <var-decl name='l_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23424'>
+ <var-decl name='d_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23616'>
+ <var-decl name='bl_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='204' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23808'>
+ <var-decl name='bl_count' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='206' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24064'>
+ <var-decl name='heap' type-id='type-id-36' visibility='default' filepath='src.d/deflate.h' line='209' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42400'>
+ <var-decl name='heap_len' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42432'>
+ <var-decl name='heap_max' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='211' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42464'>
+ <var-decl name='depth' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='216' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47104'>
+ <var-decl name='sym_buf' type-id='type-id-48' visibility='default' filepath='src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47168'>
+ <var-decl name='lit_bufsize' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='222' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47200'>
+ <var-decl name='sym_next' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='242' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47232'>
+ <var-decl name='sym_end' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='243' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47296'>
+ <var-decl name='opt_len' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='245' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47360'>
+ <var-decl name='static_len' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='246' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47424'>
+ <var-decl name='matches' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='247' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47456'>
+ <var-decl name='insert' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='248' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47488'>
+ <var-decl name='bi_buf' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='255' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47520'>
+ <var-decl name='bi_valid' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='259' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47552'>
+ <var-decl name='high_water' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='264' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='tree_desc_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='86' column='1' id='type-id-45'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='max_code' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='stat_desc' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='89' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='z_stream_s' size-in-bits='896' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='86' column='1' id='type-id-52'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='avail_in' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='total_in' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='next_out' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='avail_out' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='92' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total_out' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='msg' type-id='type-id-53' visibility='default' filepath='src.d/zlib.h' line='95' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='state' type-id='type-id-54' visibility='default' filepath='src.d/zlib.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='zalloc' type-id='type-id-55' visibility='default' filepath='src.d/zlib.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='zfree' type-id='type-id-56' visibility='default' filepath='src.d/zlib.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='opaque' type-id='type-id-57' visibility='default' filepath='src.d/zlib.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='data_type' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='adler' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='reserved' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='105' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='IPos' type-id='type-id-11' filepath='src.d/deflate.h' line='94' column='1' id='type-id-44'/>
+ <typedef-decl name='Pos' type-id='type-id-49' filepath='src.d/deflate.h' line='92' column='1' id='type-id-58'/>
+ <typedef-decl name='Posf' type-id='type-id-58' filepath='src.d/deflate.h' line='93' column='1' id='type-id-59'/>
+ <typedef-decl name='alloc_func' type-id='type-id-60' filepath='src.d/zlib.h' line='81' column='1' id='type-id-55'/>
+ <typedef-decl name='charf' type-id='type-id-28' filepath='./zconf.h' line='408' column='1' id='type-id-61'/>
+ <typedef-decl name='ct_data' type-id='type-id-29' filepath='src.d/deflate.h' line='77' column='1' id='type-id-62'/>
+ <typedef-decl name='deflate_state' type-id='type-id-40' filepath='src.d/deflate.h' line='271' column='1' id='type-id-63'/>
+ <typedef-decl name='free_func' type-id='type-id-64' filepath='src.d/zlib.h' line='82' column='1' id='type-id-56'/>
+ <typedef-decl name='gz_header' type-id='type-id-39' filepath='src.d/zlib.h' line='129' column='1' id='type-id-65'/>
+ <typedef-decl name='gz_headerp' type-id='type-id-66' filepath='src.d/zlib.h' line='131' column='1' id='type-id-42'/>
+ <typedef-decl name='uch' type-id='type-id-2' filepath='src.d/zutil.h' line='39' column='1' id='type-id-67'/>
+ <typedef-decl name='uchf' type-id='type-id-67' filepath='src.d/zutil.h' line='40' column='1' id='type-id-68'/>
+ <typedef-decl name='ulg' type-id='type-id-9' filepath='src.d/zutil.h' line='43' column='1' id='type-id-41'/>
+ <typedef-decl name='ush' type-id='type-id-69' filepath='src.d/zutil.h' line='41' column='1' id='type-id-49'/>
+ <typedef-decl name='z_stream' type-id='type-id-52' filepath='src.d/zlib.h' line='106' column='1' id='type-id-70'/>
+ <typedef-decl name='z_streamp' type-id='type-id-71' filepath='src.d/zlib.h' line='108' column='1' id='type-id-21'/>
+ <array-type-def dimensions='1' type-id='type-id-67' size-in-bits='4584' id='type-id-47'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='73' column='1' id='type-id-38'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='74' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='75' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='69' column='1' id='type-id-37'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='70' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='71' column='1'/>
+ </data-member>
+ </union-decl>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-69'/>
+ <array-type-def dimensions='1' type-id='type-id-49' size-in-bits='256' id='type-id-46'>
+ <subrange length='16' lower-bound='0' upper-bound='15' type-id='type-id-9' id='type-id-72'/>
+ </array-type-def>
+ <pointer-type-def type-id='type-id-4' size-in-bits='64' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-59' size-in-bits='64' id='type-id-43'/>
+ <pointer-type-def type-id='type-id-28' size-in-bits='64' id='type-id-53'/>
+ <pointer-type-def type-id='type-id-61' size-in-bits='64' id='type-id-73'/>
+ <qualified-type-def type-id='type-id-28' const='yes' id='type-id-74'/>
+ <pointer-type-def type-id='type-id-74' size-in-bits='64' id='type-id-22'/>
+ <pointer-type-def type-id='type-id-62' size-in-bits='64' id='type-id-50'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-65' size-in-bits='64' id='type-id-66'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-40' size-in-bits='64' id='type-id-54'/>
+ <pointer-type-def type-id='type-id-77' size-in-bits='64' id='type-id-60'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-68' size-in-bits='64' id='type-id-48'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-80' size-in-bits='64' id='type-id-64'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='64' id='type-id-71'/>
+ <qualified-type-def type-id='type-id-81' const='yes' id='type-id-82'/>
+ <pointer-type-def type-id='type-id-82' size-in-bits='64' id='type-id-51'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-83'/>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-57'/>
+ <function-decl name='memcpy' filepath='/usr/powerpc64le-linux-gnu/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/powerpc64le-linux-gnu/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='deflateInit2_' mangled-name='deflateInit2_' filepath='src.d/deflate.c' line='237' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateInit2_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='239' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='240' column='1'/>
+ <parameter type-id='type-id-20' name='method' filepath='src.d/deflate.c' line='241' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/deflate.c' line='242' column='1'/>
+ <parameter type-id='type-id-20' name='memLevel' filepath='src.d/deflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/deflate.c' line='245' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/deflate.c' line='246' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetDictionary' mangled-name='deflateSetDictionary' filepath='src.d/deflate.c' line='412' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='413' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/deflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-12' name='dictLength' filepath='src.d/deflate.c' line='415' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateGetDictionary' mangled-name='deflateGetDictionary' filepath='src.d/deflate.c' line='481' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateGetDictionary@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='482' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/deflate.c' line='483' column='1'/>
+ <parameter type-id='type-id-78' name='dictLength' filepath='src.d/deflate.c' line='484' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateResetKeep' mangled-name='deflateResetKeep' filepath='src.d/deflate.c' line='503' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='504' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateReset' mangled-name='deflateReset' filepath='src.d/deflate.c' line='541' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateReset'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='542' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetHeader' mangled-name='deflateSetHeader' filepath='src.d/deflate.c' line='553' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateSetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='554' column='1'/>
+ <parameter type-id='type-id-42' name='head' filepath='src.d/deflate.c' line='555' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePending' mangled-name='deflatePending' filepath='src.d/deflate.c' line='564' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflatePending@@ZLIB_1.2.5.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='567' column='1'/>
+ <parameter type-id='type-id-79' name='pending' filepath='src.d/deflate.c' line='565' column='1'/>
+ <parameter type-id='type-id-76' name='bits' filepath='src.d/deflate.c' line='566' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePrime' mangled-name='deflatePrime' filepath='src.d/deflate.c' line='578' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflatePrime@@ZLIB_1.2.0.8'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='579' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/deflate.c' line='580' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/deflate.c' line='581' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateParams' mangled-name='deflateParams' filepath='src.d/deflate.c' line='605' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateParams'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='606' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='607' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='608' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateTune' mangled-name='deflateTune' filepath='src.d/deflate.c' line='654' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateTune@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='655' column='1'/>
+ <parameter type-id='type-id-20' name='good_length' filepath='src.d/deflate.c' line='656' column='1'/>
+ <parameter type-id='type-id-20' name='max_lazy' filepath='src.d/deflate.c' line='657' column='1'/>
+ <parameter type-id='type-id-20' name='nice_length' filepath='src.d/deflate.c' line='658' column='1'/>
+ <parameter type-id='type-id-20' name='max_chain' filepath='src.d/deflate.c' line='659' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateBound' mangled-name='deflateBound' filepath='src.d/deflate.c' line='696' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='697' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/deflate.c' line='698' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflateCopy' mangled-name='deflateCopy' filepath='src.d/deflate.c' line='1156' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateCopy'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/deflate.c' line='1157' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/deflate.c' line='1158' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <typedef-decl name='static_tree_desc' type-id='type-id-83' filepath='src.d/deflate.h' line='84' column='1' id='type-id-81'/>
+ <function-decl name='_tr_init' filepath='src.d/deflate.h' line='294' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_flush_block' filepath='src.d/deflate.h' line='296' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_flush_bits' filepath='src.d/deflate.h' line='298' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_align' filepath='src.d/deflate.h' line='299' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_stored_block' filepath='src.d/deflate.h' line='300' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='crc32' filepath='src.d/zlib.h' line='1727' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-13'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zcalloc' filepath='src.d/zutil.h' line='261' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-57'/>
+ </function-decl>
+ <function-decl name='zcfree' filepath='src.d/zutil.h' line='263' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-57'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <type-decl name='void' id='type-id-85'/>
+ <pointer-type-def type-id='type-id-85' id='type-id-84'/>
+ <function-type size-in-bits='64' id='type-id-80'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-57'/>
+ <return type-id='type-id-85'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-77'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-12'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-57'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzclose.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gzFile_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='1834' column='1' id='type-id-86'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='1835' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='next' type-id='type-id-87' visibility='default' filepath='src.d/zlib.h' line='1836' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pos' type-id='type-id-7' visibility='default' filepath='src.d/zlib.h' line='1837' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gzFile' type-id='type-id-88' filepath='src.d/zlib.h' line='1302' column='1' id='type-id-89'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='64' id='type-id-88'/>
+ <function-decl name='gzclose' mangled-name='gzclose' filepath='src.d/gzclose.c' line='11' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzclose'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzclose.c' line='12' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_r' filepath='src.d/zlib.h' line='1644' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_w' filepath='src.d/zlib.h' line='1645' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='open' filepath='/usr/powerpc64le-linux-gnu/include/fcntl.h' line='209' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='snprintf' filepath='/usr/powerpc64le-linux-gnu/include/stdio.h' line='385' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-53'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/powerpc64le-linux-gnu/include/stdlib.h' line='672' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='free' filepath='/usr/powerpc64le-linux-gnu/include/stdlib.h' line='687' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/powerpc64le-linux-gnu/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/powerpc64le-linux-gnu/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-5'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='gzopen' mangled-name='gzopen' filepath='src.d/gzlib.c' line='272' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzopen'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='273' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='274' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzopen64' mangled-name='gzopen64' filepath='src.d/gzlib.c' line='280' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzopen64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='281' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='282' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzdopen' mangled-name='gzdopen' filepath='src.d/gzlib.c' line='288' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzdopen'>
+ <parameter type-id='type-id-20' name='fd' filepath='src.d/gzlib.c' line='289' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='290' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzbuffer' mangled-name='gzbuffer' filepath='src.d/gzlib.c' line='318' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzbuffer@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='319' column='1'/>
+ <parameter type-id='type-id-11' name='size' filepath='src.d/gzlib.c' line='320' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzrewind' mangled-name='gzrewind' filepath='src.d/gzlib.c' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzrewind'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='346' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzseek64' mangled-name='gzseek64' filepath='src.d/gzlib.c' line='368' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzseek64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='369' column='1'/>
+ <parameter type-id='type-id-7' name='offset' filepath='src.d/gzlib.c' line='370' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='371' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzseek' mangled-name='gzseek' filepath='src.d/gzlib.c' line='445' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzseek'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='446' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='src.d/gzlib.c' line='447' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='448' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gztell64' mangled-name='gztell64' filepath='src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gztell64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='458' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gztell' mangled-name='gztell' filepath='src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gztell'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='475' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzoffset64' mangled-name='gzoffset64' filepath='src.d/gzlib.c' line='484' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzoffset64@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='485' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzoffset' mangled-name='gzoffset' filepath='src.d/gzlib.c' line='507' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzoffset@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='508' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzeof' mangled-name='gzeof' filepath='src.d/gzlib.c' line='517' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzeof'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='518' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzerror' mangled-name='gzerror' filepath='src.d/gzlib.c' line='534' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzerror'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='535' column='1'/>
+ <parameter type-id='type-id-76' name='errnum' filepath='src.d/gzlib.c' line='536' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclearerr' mangled-name='gzclearerr' filepath='src.d/gzlib.c' line='555' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzclearerr@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='556' column='1'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <type-decl name='variadic parameter type' id='type-id-90'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1920' is-struct='yes' naming-typedef-id='type-id-91' visibility='default' filepath='src.d/gzguts.h' line='170' column='1' id='type-id-92'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-86' visibility='default' filepath='src.d/gzguts.h' line='172' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='mode' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='fd' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='path' type-id='type-id-53' visibility='default' filepath='src.d/gzguts.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='size' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='180' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='want' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='in' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='182' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='out' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='183' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='direct' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='184' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='how' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='start' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='eof' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='past' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='192' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reset' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='193' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='skip' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='195' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='seek' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='196' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='err' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='msg' type-id='type-id-53' visibility='default' filepath='src.d/gzguts.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='strm' type-id='type-id-70' visibility='default' filepath='src.d/gzguts.h' line='201' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__ssize_t' type-id='type-id-1' filepath='/usr/powerpc64le-linux-gnu/include/bits/types.h' line='194' column='1' id='type-id-93'/>
+ <typedef-decl name='gz_state' type-id='type-id-92' filepath='src.d/gzguts.h' line='202' column='1' id='type-id-91'/>
+ <typedef-decl name='gz_statep' type-id='type-id-94' filepath='src.d/gzguts.h' line='203' column='1' id='type-id-95'/>
+ <typedef-decl name='ssize_t' type-id='type-id-93' filepath='/usr/powerpc64le-linux-gnu/include/sys/types.h' line='108' column='1' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-91' size-in-bits='64' id='type-id-94'/>
+ <typedef-decl name='voidp' type-id='type-id-84' filepath='./zconf.h' line='416' column='1' id='type-id-97'/>
+ <function-decl name='__errno_location' filepath='/usr/powerpc64le-linux-gnu/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-76'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/powerpc64le-linux-gnu/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/powerpc64le-linux-gnu/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-53'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/powerpc64le-linux-gnu/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='read' filepath='/usr/powerpc64le-linux-gnu/include/unistd.h' line='371' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-96'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='src.d/gzguts.h' line='206' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='gzread' mangled-name='gzread' filepath='src.d/gzread.c' line='373' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzread'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='374' column='1'/>
+ <parameter type-id='type-id-97' name='buf' filepath='src.d/gzread.c' line='375' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzread.c' line='376' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfread' mangled-name='gzfread' filepath='src.d/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzfread@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-97' name='buf' filepath='src.d/gzread.c' line='410' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzread.c' line='411' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzread.c' line='412' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='413' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzgetc' mangled-name='gzgetc' filepath='src.d/gzread.c' line='445' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgetc'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='446' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgetc_' mangled-name='gzgetc_' filepath='src.d/gzread.c' line='472' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgetc_@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='473' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzungetc' mangled-name='gzungetc' filepath='src.d/gzread.c' line='479' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzungetc@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzread.c' line='480' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='481' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgets' mangled-name='gzgets' filepath='src.d/gzread.c' line='539' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgets'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='540' column='1'/>
+ <parameter type-id='type-id-53' name='buf' filepath='src.d/gzread.c' line='541' column='1'/>
+ <parameter type-id='type-id-20' name='len' filepath='src.d/gzread.c' line='542' column='1'/>
+ <return type-id='type-id-53'/>
+ </function-decl>
+ <function-decl name='gzdirect' mangled-name='gzdirect' filepath='src.d/gzread.c' line='603' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzdirect@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='604' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate' filepath='src.d/zlib.h' line='400' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateEnd' filepath='src.d/zlib.h' line='520' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset' filepath='src.d/zlib.h' line='959' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit2_' filepath='src.d/zlib.h' line='1789' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-53' filepath='/usr/lib/gcc-cross/powerpc64le-linux-gnu/13/include/stdarg.h' line='40' column='1' id='type-id-98'/>
+ <typedef-decl name='va_list' type-id='type-id-98' filepath='/usr/lib/gcc-cross/powerpc64le-linux-gnu/13/include/stdarg.h' line='103' column='1' id='type-id-99'/>
+ <typedef-decl name='voidpc' type-id='type-id-84' filepath='./zconf.h' line='414' column='1' id='type-id-100'/>
+ <function-decl name='vsnprintf' filepath='/usr/powerpc64le-linux-gnu/include/stdio.h' line='389' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-53'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-53'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='memmove' filepath='/usr/powerpc64le-linux-gnu/include/string.h' line='47' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/powerpc64le-linux-gnu/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-96'/>
+ </function-decl>
+ <function-decl name='gzwrite' mangled-name='gzwrite' filepath='src.d/gzwrite.c' line='255' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzwrite'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='256' column='1'/>
+ <parameter type-id='type-id-100' name='buf' filepath='src.d/gzwrite.c' line='257' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfwrite' mangled-name='gzfwrite' filepath='src.d/gzwrite.c' line='283' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzfwrite@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-100' name='buf' filepath='src.d/gzwrite.c' line='284' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzwrite.c' line='285' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzwrite.c' line='286' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzputc' mangled-name='gzputc' filepath='src.d/gzwrite.c' line='313' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzputc'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='314' column='1'/>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzwrite.c' line='315' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzputs' mangled-name='gzputs' filepath='src.d/gzwrite.c' line='361' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzputs'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='362' column='1'/>
+ <parameter type-id='type-id-22' name='s' filepath='src.d/gzwrite.c' line='363' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzvprintf' mangled-name='gzvprintf' filepath='src.d/gzwrite.c' line='391' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzvprintf@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-99' name='va' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzprintf' mangled-name='gzprintf' filepath='src.d/gzwrite.c' line='463' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzprintf'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzflush' mangled-name='gzflush' filepath='src.d/gzwrite.c' line='565' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzflush'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='566' column='1'/>
+ <parameter type-id='type-id-20' name='flush' filepath='src.d/gzwrite.c' line='567' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzsetparams' mangled-name='gzsetparams' filepath='src.d/gzwrite.c' line='597' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzsetparams'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='598' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/gzwrite.c' line='599' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/gzwrite.c' line='600' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <enum-decl name='codetype' naming-typedef-id='type-id-101' filepath='src.d/inftrees.h' line='54' column='1' id='type-id-102'>
+ <underlying-type type-id='type-id-103'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-104' visibility='default' filepath='src.d/inftrees.h' line='24' column='1' id='type-id-105'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-69' visibility='default' filepath='src.d/inftrees.h' line='27' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-105' filepath='src.d/inftrees.h' line='28' column='1' id='type-id-104'/>
+ <typedef-decl name='codetype' type-id='type-id-102' filepath='src.d/inftrees.h' line='58' column='1' id='type-id-101'/>
+ <typedef-decl name='in_func' type-id='type-id-106' filepath='src.d/zlib.h' line='1094' column='1' id='type-id-107'/>
+ <typedef-decl name='out_func' type-id='type-id-108' filepath='src.d/zlib.h' line='1096' column='1' id='type-id-109'/>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-103'/>
+ <pointer-type-def type-id='type-id-104' size-in-bits='64' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-110' size-in-bits='64' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-112' size-in-bits='64' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-87'/>
+ <pointer-type-def type-id='type-id-87' size-in-bits='64' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-114' size-in-bits='64' id='type-id-106'/>
+ <pointer-type-def type-id='type-id-69' size-in-bits='64' id='type-id-115'/>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-116'/>
+ <function-decl name='inflateBackInit_' mangled-name='inflateBackInit_' filepath='src.d/infback.c' line='28' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBackInit_@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='29' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/infback.c' line='30' column='1'/>
+ <parameter type-id='type-id-87' name='window' filepath='src.d/infback.c' line='31' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/infback.c' line='32' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/infback.c' line='33' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBack' mangled-name='inflateBack' filepath='src.d/infback.c' line='251' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBack@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='252' column='1'/>
+ <parameter type-id='type-id-107' name='in' filepath='src.d/infback.c' line='253' column='1'/>
+ <parameter type-id='type-id-84' name='in_desc' filepath='src.d/infback.c' line='254' column='1'/>
+ <parameter type-id='type-id-109' name='out' filepath='src.d/infback.c' line='255' column='1'/>
+ <parameter type-id='type-id-84' name='out_desc' filepath='src.d/infback.c' line='256' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBackEnd' mangled-name='inflateBackEnd' filepath='src.d/infback.c' line='635' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBackEnd@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='636' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate_fast' filepath='src.d/inffast.h' line='11' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='inflate_table' filepath='src.d/inftrees.h' line='60' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-101'/>
+ <parameter type-id='type-id-115'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-111'/>
+ <parameter type-id='type-id-79'/>
+ <parameter type-id='type-id-115'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-112'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-87'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-114'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-113'/>
+ <return type-id='type-id-11'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-117'/>
+ <function-decl name='inflateResetKeep' mangled-name='inflateResetKeep' filepath='src.d/inflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='120' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset2' mangled-name='inflateReset2' filepath='src.d/inflate.c' line='158' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateReset2@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='159' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/inflate.c' line='160' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit_' mangled-name='inflateInit_' filepath='src.d/inflate.c' line='242' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateInit_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/inflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/inflate.c' line='245' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflatePrime' mangled-name='inflatePrime' filepath='src.d/inflate.c' line='250' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflatePrime@@ZLIB_1.2.2.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='251' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/inflate.c' line='252' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/inflate.c' line='253' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetDictionary' mangled-name='inflateGetDictionary' filepath='src.d/inflate.c' line='1318' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateGetDictionary@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1319' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-78' name='dictLength' filepath='src.d/inflate.c' line='1321' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSetDictionary' mangled-name='inflateSetDictionary' filepath='src.d/inflate.c' line='1341' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1342' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/inflate.c' line='1343' column='1'/>
+ <parameter type-id='type-id-12' name='dictLength' filepath='src.d/inflate.c' line='1344' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetHeader' mangled-name='inflateGetHeader' filepath='src.d/inflate.c' line='1376' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateGetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1377' column='1'/>
+ <parameter type-id='type-id-42' name='head' filepath='src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSync' mangled-name='inflateSync' filepath='src.d/inflate.c' line='1427' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSync'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1428' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSyncPoint' mangled-name='inflateSyncPoint' filepath='src.d/inflate.c' line='1485' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSyncPoint'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1486' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateCopy' mangled-name='inflateCopy' filepath='src.d/inflate.c' line='1495' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateCopy@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/inflate.c' line='1496' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/inflate.c' line='1497' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateUndermine' mangled-name='inflateUndermine' filepath='src.d/inflate.c' line='1542' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateUndermine@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1543' column='1'/>
+ <parameter type-id='type-id-20' name='subvert' filepath='src.d/inflate.c' line='1544' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateValidate' mangled-name='inflateValidate' filepath='src.d/inflate.c' line='1560' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateValidate@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1561' column='1'/>
+ <parameter type-id='type-id-20' name='check' filepath='src.d/inflate.c' line='1562' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateMark' mangled-name='inflateMark' filepath='src.d/inflate.c' line='1575' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateMark@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1576' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='inflateCodesUsed' mangled-name='inflateCodesUsed' filepath='src.d/inflate.c' line='1588' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateCodesUsed@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1589' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='2048' id='type-id-119'>
+ <subrange length='256' lower-bound='0' upper-bound='255' type-id='type-id-9' id='type-id-120'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='4096' id='type-id-121'>
+ <subrange length='512' lower-bound='0' upper-bound='511' type-id='type-id-9' id='type-id-122'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='unknown' id='type-id-123'>
+ <subrange length='unknown' lower-bound='0' upper-bound='0' id='type-id-124'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-67' const='yes' id='type-id-118'/>
+ <var-decl name='_length_code' type-id='type-id-119' visibility='default' filepath='src.d/deflate.h' line='317' column='1'/>
+ <var-decl name='_dist_code' type-id='type-id-121' visibility='default' filepath='src.d/deflate.h' line='318' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-125'/>
+ <function-decl name='uncompress2' mangled-name='uncompress2' filepath='src.d/uncompr.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='uncompress2@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='28' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='29' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='30' column='1'/>
+ <parameter type-id='type-id-125' name='sourceLen' filepath='src.d/uncompr.c' line='31' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='uncompress' mangled-name='uncompress' filepath='src.d/uncompr.c' line='86' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='uncompress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='87' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='88' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='89' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/uncompr.c' line='90' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-126' size-in-bits='640' id='type-id-127'>
+ <subrange length='10' lower-bound='0' upper-bound='9' type-id='type-id-9' id='type-id-128'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-53' const='yes' id='type-id-126'/>
+ <function-decl name='zlibVersion' mangled-name='zlibVersion' filepath='src.d/zutil.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibVersion'>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='zlibCompileFlags' mangled-name='zlibCompileFlags' filepath='src.d/zutil.c' line='32' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibCompileFlags@@ZLIB_1.2.0.2'>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zError' mangled-name='zError' filepath='src.d/zutil.c' line='135' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zError'>
+ <parameter type-id='type-id-20' name='err' filepath='src.d/zutil.c' line='136' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <var-decl name='z_errmsg' type-id='type-id-127' visibility='default' filepath='src.d/zutil.h' line='56' column='1'/>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-x86_64-pc-linux-gnu-m32.abi b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-x86_64-pc-linux-gnu-m32.abi
new file mode 100644
index 0000000000..5b55fc6050
--- /dev/null
+++ b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-x86_64-pc-linux-gnu-m32.abi
@@ -0,0 +1,1270 @@
+<abi-corpus version='2.2' path='btmp1/libz.so.1.2.13' architecture='elf-intel-80386' soname='libz.so.1'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='adler32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compressBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen64' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_op' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateCopy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateGetDictionary' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateParams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePending' version='ZLIB_1.2.5.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePrime' version='ZLIB_1.2.0.8' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateTune' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='get_crc_table' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzbuffer' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclearerr' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_r' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_w' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdirect' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzeof' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzerror' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzflush' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfread' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfwrite' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc_' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgets' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset64' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzprintf' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputs' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzread' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzrewind' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzsetparams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzungetc' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzvprintf' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzwrite' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBack' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackEnd' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackInit_' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCodesUsed' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCopy' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetDictionary' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateMark' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflatePrime' version='ZLIB_1.2.2.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset2' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSyncPoint' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateUndermine' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateValidate' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress2' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zError' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibCompileFlags' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibVersion' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <abi-instr address-size='32' path='src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='32' id='type-id-1'/>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-2'/>
+ <typedef-decl name='Byte' type-id='type-id-3' filepath='./zconf.h' line='397' column='1' id='type-id-4'/>
+ <typedef-decl name='Bytef' type-id='type-id-4' filepath='./zconf.h' line='406' column='1' id='type-id-5'/>
+ <typedef-decl name='__int64_t' type-id='type-id-2' filepath='/usr/include/bits/types.h' line='47' column='1' id='type-id-6'/>
+ <typedef-decl name='__off64_t' type-id='type-id-6' filepath='/usr/include/bits/types.h' line='153' column='1' id='type-id-7'/>
+ <typedef-decl name='__off_t' type-id='type-id-1' filepath='/usr/include/bits/types.h' line='152' column='1' id='type-id-8'/>
+ <typedef-decl name='off64_t' type-id='type-id-7' filepath='/usr/include/sys/types.h' line='92' column='1' id='type-id-9'/>
+ <typedef-decl name='off_t' type-id='type-id-8' filepath='/usr/include/sys/types.h' line='85' column='1' id='type-id-10'/>
+ <typedef-decl name='size_t' type-id='type-id-11' filepath='/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h' line='214' column='1' id='type-id-12'/>
+ <typedef-decl name='uInt' type-id='type-id-11' filepath='./zconf.h' line='399' column='1' id='type-id-13'/>
+ <typedef-decl name='uLong' type-id='type-id-14' filepath='./zconf.h' line='400' column='1' id='type-id-15'/>
+ <typedef-decl name='z_size_t' type-id='type-id-12' filepath='./zconf.h' line='251' column='1' id='type-id-16'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-3'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-11'/>
+ <type-decl name='unsigned long int' size-in-bits='32' id='type-id-14'/>
+ <qualified-type-def type-id='type-id-5' const='yes' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='32' id='type-id-18'/>
+ <function-decl name='adler32_z' mangled-name='adler32_z' filepath='src.d/adler32.c' line='63' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-15' name='adler' filepath='src.d/adler32.c' line='64' column='1'/>
+ <parameter type-id='type-id-18' name='buf' filepath='src.d/adler32.c' line='65' column='1'/>
+ <parameter type-id='type-id-16' name='len' filepath='src.d/adler32.c' line='66' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='adler32' mangled-name='adler32' filepath='src.d/adler32.c' line='134' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32'>
+ <parameter type-id='type-id-15' name='adler' filepath='src.d/adler32.c' line='135' column='1'/>
+ <parameter type-id='type-id-18' name='buf' filepath='src.d/adler32.c' line='136' column='1'/>
+ <parameter type-id='type-id-13' name='len' filepath='src.d/adler32.c' line='137' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='adler32_combine' mangled-name='adler32_combine' filepath='src.d/adler32.c' line='172' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-15' name='adler1' filepath='src.d/adler32.c' line='173' column='1'/>
+ <parameter type-id='type-id-15' name='adler2' filepath='src.d/adler32.c' line='174' column='1'/>
+ <parameter type-id='type-id-10' name='len2' filepath='src.d/adler32.c' line='175' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='adler32_combine64' mangled-name='adler32_combine64' filepath='src.d/adler32.c' line='180' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='adler32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-15' name='adler1' filepath='src.d/adler32.c' line='181' column='1'/>
+ <parameter type-id='type-id-15' name='adler2' filepath='src.d/adler32.c' line='182' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='src.d/adler32.c' line='183' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='uLongf' type-id='type-id-15' filepath='./zconf.h' line='411' column='1' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-19' size-in-bits='32' id='type-id-20'/>
+ <function-decl name='compress2' mangled-name='compress2' filepath='src.d/compress.c' line='22' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compress2'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/compress.c' line='23' column='1'/>
+ <parameter type-id='type-id-20' name='destLen' filepath='src.d/compress.c' line='24' column='1'/>
+ <parameter type-id='type-id-18' name='source' filepath='src.d/compress.c' line='25' column='1'/>
+ <parameter type-id='type-id-15' name='sourceLen' filepath='src.d/compress.c' line='26' column='1'/>
+ <parameter type-id='type-id-22' name='level' filepath='src.d/compress.c' line='27' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='compress' mangled-name='compress' filepath='src.d/compress.c' line='68' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compress'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/compress.c' line='69' column='1'/>
+ <parameter type-id='type-id-20' name='destLen' filepath='src.d/compress.c' line='70' column='1'/>
+ <parameter type-id='type-id-18' name='source' filepath='src.d/compress.c' line='71' column='1'/>
+ <parameter type-id='type-id-15' name='sourceLen' filepath='src.d/compress.c' line='72' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='compressBound' mangled-name='compressBound' filepath='src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='compressBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-15' name='sourceLen' filepath='src.d/compress.c' line='82' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='deflate' filepath='src.d/zlib.h' line='250' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-23'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflateEnd' filepath='src.d/zlib.h' line='363' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-23'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflateInit_' filepath='src.d/zlib.h' line='1781' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-23'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/crc32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='z_crc_t' type-id='type-id-11' filepath='./zconf.h' line='435' column='1' id='type-id-25'/>
+ <qualified-type-def type-id='type-id-3' const='yes' id='type-id-26'/>
+ <pointer-type-def type-id='type-id-26' size-in-bits='32' id='type-id-27'/>
+ <qualified-type-def type-id='type-id-25' const='yes' id='type-id-28'/>
+ <pointer-type-def type-id='type-id-28' size-in-bits='32' id='type-id-29'/>
+ <function-decl name='get_crc_table' mangled-name='get_crc_table' filepath='src.d/crc32.c' line='595' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='get_crc_table'>
+ <return type-id='type-id-29'/>
+ </function-decl>
+ <function-decl name='crc32_z' mangled-name='crc32_z' filepath='src.d/crc32.c' line='748' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-14' name='crc' filepath='src.d/crc32.c' line='749' column='1'/>
+ <parameter type-id='type-id-27' name='buf' filepath='src.d/crc32.c' line='750' column='1'/>
+ <parameter type-id='type-id-16' name='len' filepath='src.d/crc32.c' line='751' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='crc32' mangled-name='crc32' filepath='src.d/crc32.c' line='1072' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32'>
+ <parameter type-id='type-id-14' name='crc' filepath='src.d/crc32.c' line='1073' column='1'/>
+ <parameter type-id='type-id-27' name='buf' filepath='src.d/crc32.c' line='1074' column='1'/>
+ <parameter type-id='type-id-13' name='len' filepath='src.d/crc32.c' line='1075' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='crc32_combine64' mangled-name='crc32_combine64' filepath='src.d/crc32.c' line='1081' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-15' name='crc1' filepath='src.d/crc32.c' line='1082' column='1'/>
+ <parameter type-id='type-id-15' name='crc2' filepath='src.d/crc32.c' line='1083' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='src.d/crc32.c' line='1084' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='crc32_combine' mangled-name='crc32_combine' filepath='src.d/crc32.c' line='1093' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-15' name='crc1' filepath='src.d/crc32.c' line='1094' column='1'/>
+ <parameter type-id='type-id-15' name='crc2' filepath='src.d/crc32.c' line='1095' column='1'/>
+ <parameter type-id='type-id-10' name='len2' filepath='src.d/crc32.c' line='1096' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen64' mangled-name='crc32_combine_gen64' filepath='src.d/crc32.c' line='1102' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_gen64@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-9' name='len2' filepath='src.d/crc32.c' line='1103' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen' mangled-name='crc32_combine_gen' filepath='src.d/crc32.c' line='1112' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_gen@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-10' name='len2' filepath='src.d/crc32.c' line='1113' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='crc32_combine_op' mangled-name='crc32_combine_op' filepath='src.d/crc32.c' line='1119' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='crc32_combine_op@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-15' name='crc1' filepath='src.d/crc32.c' line='1120' column='1'/>
+ <parameter type-id='type-id-15' name='crc2' filepath='src.d/crc32.c' line='1121' column='1'/>
+ <parameter type-id='type-id-15' name='op' filepath='src.d/crc32.c' line='1122' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-30'/>
+ <array-type-def dimensions='1' type-id='type-id-31' size-in-bits='1248' id='type-id-32'>
+ <subrange length='39' lower-bound='0' upper-bound='38' type-id='type-id-11' id='type-id-33'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-31' size-in-bits='18336' id='type-id-34'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-11' id='type-id-35'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-31' size-in-bits='1952' id='type-id-36'>
+ <subrange length='61' lower-bound='0' upper-bound='60' type-id='type-id-11' id='type-id-37'/>
+ </array-type-def>
+ <type-decl name='int' size-in-bits='32' id='type-id-22'/>
+ <array-type-def dimensions='1' type-id='type-id-22' size-in-bits='18336' id='type-id-38'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-11' id='type-id-35'/>
+ </array-type-def>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='68' column='1' id='type-id-31'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-39' visibility='default' filepath='src.d/deflate.h' line='72' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-40' visibility='default' filepath='src.d/deflate.h' line='76' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='gz_header_s' size-in-bits='416' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='114' column='1' id='type-id-41'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-22' visibility='default' filepath='src.d/zlib.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='time' type-id='type-id-15' visibility='default' filepath='src.d/zlib.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='xflags' type-id='type-id-22' visibility='default' filepath='src.d/zlib.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='os' type-id='type-id-22' visibility='default' filepath='src.d/zlib.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='extra' type-id='type-id-21' visibility='default' filepath='src.d/zlib.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='extra_len' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra_max' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='name' type-id='type-id-21' visibility='default' filepath='src.d/zlib.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='name_max' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='comment' type-id='type-id-21' visibility='default' filepath='src.d/zlib.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='comm_max' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='hcrc' type-id='type-id-22' visibility='default' filepath='src.d/zlib.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='done' type-id='type-id-22' visibility='default' filepath='src.d/zlib.h' line='127' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='internal_state' size-in-bits='46624' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='100' column='1' id='type-id-42'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-23' visibility='default' filepath='src.d/deflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='status' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_buf' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='pending_buf_size' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_out' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='pending' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='wrap' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='gzhead' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='gzindex' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='method' type-id='type-id-4' visibility='default' filepath='src.d/deflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='last_flush' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='w_size' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='w_bits' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='w_mask' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='window' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='window_size' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='prev' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='head' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='140' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='ins_h' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='142' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='hash_size' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='143' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='hash_bits' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='144' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='hash_mask' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='hash_shift' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='147' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='block_start' type-id='type-id-1' visibility='default' filepath='src.d/deflate.h' line='154' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='match_length' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='159' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='prev_match' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='match_available' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='161' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strstart' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='162' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='match_start' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='163' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='lookahead' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='164' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='prev_length' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='max_chain_length' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='171' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='max_lazy_match' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='level' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='strategy' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='good_match' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='nice_match' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='194' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='dyn_ltree' type-id='type-id-34' visibility='default' filepath='src.d/deflate.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='19520'>
+ <var-decl name='dyn_dtree' type-id='type-id-36' visibility='default' filepath='src.d/deflate.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='21472'>
+ <var-decl name='bl_tree' type-id='type-id-32' visibility='default' filepath='src.d/deflate.h' line='200' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22720'>
+ <var-decl name='l_desc' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22816'>
+ <var-decl name='d_desc' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22912'>
+ <var-decl name='bl_desc' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='204' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23008'>
+ <var-decl name='bl_count' type-id='type-id-48' visibility='default' filepath='src.d/deflate.h' line='206' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23264'>
+ <var-decl name='heap' type-id='type-id-38' visibility='default' filepath='src.d/deflate.h' line='209' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41600'>
+ <var-decl name='heap_len' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41632'>
+ <var-decl name='heap_max' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='211' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='41664'>
+ <var-decl name='depth' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='216' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46272'>
+ <var-decl name='sym_buf' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46304'>
+ <var-decl name='lit_bufsize' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='222' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46336'>
+ <var-decl name='sym_next' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='242' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46368'>
+ <var-decl name='sym_end' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='243' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46400'>
+ <var-decl name='opt_len' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='245' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46432'>
+ <var-decl name='static_len' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='246' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46464'>
+ <var-decl name='matches' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='247' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46496'>
+ <var-decl name='insert' type-id='type-id-13' visibility='default' filepath='src.d/deflate.h' line='248' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46528'>
+ <var-decl name='bi_buf' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='255' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46560'>
+ <var-decl name='bi_valid' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='259' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46592'>
+ <var-decl name='high_water' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='264' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='tree_desc_s' size-in-bits='96' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='86' column='1' id='type-id-47'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-52' visibility='default' filepath='src.d/deflate.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='max_code' type-id='type-id-22' visibility='default' filepath='src.d/deflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='stat_desc' type-id='type-id-53' visibility='default' filepath='src.d/deflate.h' line='89' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='z_stream_s' size-in-bits='448' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='86' column='1' id='type-id-54'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-21' visibility='default' filepath='src.d/zlib.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='avail_in' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='total_in' type-id='type-id-15' visibility='default' filepath='src.d/zlib.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='next_out' type-id='type-id-21' visibility='default' filepath='src.d/zlib.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='avail_out' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='92' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='total_out' type-id='type-id-15' visibility='default' filepath='src.d/zlib.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='msg' type-id='type-id-55' visibility='default' filepath='src.d/zlib.h' line='95' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='state' type-id='type-id-56' visibility='default' filepath='src.d/zlib.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='zalloc' type-id='type-id-57' visibility='default' filepath='src.d/zlib.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='zfree' type-id='type-id-58' visibility='default' filepath='src.d/zlib.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='opaque' type-id='type-id-59' visibility='default' filepath='src.d/zlib.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='data_type' type-id='type-id-22' visibility='default' filepath='src.d/zlib.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='adler' type-id='type-id-15' visibility='default' filepath='src.d/zlib.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='reserved' type-id='type-id-15' visibility='default' filepath='src.d/zlib.h' line='105' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='IPos' type-id='type-id-11' filepath='src.d/deflate.h' line='94' column='1' id='type-id-46'/>
+ <typedef-decl name='Pos' type-id='type-id-51' filepath='src.d/deflate.h' line='92' column='1' id='type-id-60'/>
+ <typedef-decl name='Posf' type-id='type-id-60' filepath='src.d/deflate.h' line='93' column='1' id='type-id-61'/>
+ <typedef-decl name='alloc_func' type-id='type-id-62' filepath='src.d/zlib.h' line='81' column='1' id='type-id-57'/>
+ <typedef-decl name='charf' type-id='type-id-30' filepath='./zconf.h' line='408' column='1' id='type-id-63'/>
+ <typedef-decl name='ct_data' type-id='type-id-31' filepath='src.d/deflate.h' line='77' column='1' id='type-id-64'/>
+ <typedef-decl name='deflate_state' type-id='type-id-42' filepath='src.d/deflate.h' line='271' column='1' id='type-id-65'/>
+ <typedef-decl name='free_func' type-id='type-id-66' filepath='src.d/zlib.h' line='82' column='1' id='type-id-58'/>
+ <typedef-decl name='gz_header' type-id='type-id-41' filepath='src.d/zlib.h' line='129' column='1' id='type-id-67'/>
+ <typedef-decl name='gz_headerp' type-id='type-id-68' filepath='src.d/zlib.h' line='131' column='1' id='type-id-44'/>
+ <typedef-decl name='uch' type-id='type-id-3' filepath='src.d/zutil.h' line='39' column='1' id='type-id-69'/>
+ <typedef-decl name='uchf' type-id='type-id-69' filepath='src.d/zutil.h' line='40' column='1' id='type-id-70'/>
+ <typedef-decl name='ulg' type-id='type-id-14' filepath='src.d/zutil.h' line='43' column='1' id='type-id-43'/>
+ <typedef-decl name='ush' type-id='type-id-71' filepath='src.d/zutil.h' line='41' column='1' id='type-id-51'/>
+ <typedef-decl name='z_stream' type-id='type-id-54' filepath='src.d/zlib.h' line='106' column='1' id='type-id-72'/>
+ <typedef-decl name='z_streamp' type-id='type-id-73' filepath='src.d/zlib.h' line='108' column='1' id='type-id-23'/>
+ <array-type-def dimensions='1' type-id='type-id-69' size-in-bits='4584' id='type-id-49'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-11' id='type-id-35'/>
+ </array-type-def>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='73' column='1' id='type-id-40'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='74' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='75' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='69' column='1' id='type-id-39'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='70' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='71' column='1'/>
+ </data-member>
+ </union-decl>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-71'/>
+ <array-type-def dimensions='1' type-id='type-id-51' size-in-bits='256' id='type-id-48'>
+ <subrange length='16' lower-bound='0' upper-bound='15' type-id='type-id-11' id='type-id-74'/>
+ </array-type-def>
+ <pointer-type-def type-id='type-id-5' size-in-bits='32' id='type-id-21'/>
+ <pointer-type-def type-id='type-id-61' size-in-bits='32' id='type-id-45'/>
+ <pointer-type-def type-id='type-id-30' size-in-bits='32' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='32' id='type-id-75'/>
+ <qualified-type-def type-id='type-id-30' const='yes' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-76' size-in-bits='32' id='type-id-24'/>
+ <pointer-type-def type-id='type-id-64' size-in-bits='32' id='type-id-52'/>
+ <pointer-type-def type-id='type-id-65' size-in-bits='32' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-67' size-in-bits='32' id='type-id-68'/>
+ <pointer-type-def type-id='type-id-22' size-in-bits='32' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-42' size-in-bits='32' id='type-id-56'/>
+ <pointer-type-def type-id='type-id-79' size-in-bits='32' id='type-id-62'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='32' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='32' id='type-id-50'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='32' id='type-id-81'/>
+ <pointer-type-def type-id='type-id-82' size-in-bits='32' id='type-id-66'/>
+ <pointer-type-def type-id='type-id-72' size-in-bits='32' id='type-id-73'/>
+ <qualified-type-def type-id='type-id-83' const='yes' id='type-id-84'/>
+ <pointer-type-def type-id='type-id-84' size-in-bits='32' id='type-id-53'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-85'/>
+ <typedef-decl name='voidpf' type-id='type-id-86' filepath='./zconf.h' line='415' column='1' id='type-id-59'/>
+ <function-decl name='memcpy' filepath='/usr/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-86'/>
+ <parameter type-id='type-id-86'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-86'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='deflateInit2_' mangled-name='deflateInit2_' filepath='src.d/deflate.c' line='237' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateInit2_'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='239' column='1'/>
+ <parameter type-id='type-id-22' name='level' filepath='src.d/deflate.c' line='240' column='1'/>
+ <parameter type-id='type-id-22' name='method' filepath='src.d/deflate.c' line='241' column='1'/>
+ <parameter type-id='type-id-22' name='windowBits' filepath='src.d/deflate.c' line='242' column='1'/>
+ <parameter type-id='type-id-22' name='memLevel' filepath='src.d/deflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-22' name='strategy' filepath='src.d/deflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-24' name='version' filepath='src.d/deflate.c' line='245' column='1'/>
+ <parameter type-id='type-id-22' name='stream_size' filepath='src.d/deflate.c' line='246' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflateSetDictionary' mangled-name='deflateSetDictionary' filepath='src.d/deflate.c' line='412' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateSetDictionary'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='413' column='1'/>
+ <parameter type-id='type-id-18' name='dictionary' filepath='src.d/deflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-13' name='dictLength' filepath='src.d/deflate.c' line='415' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflateGetDictionary' mangled-name='deflateGetDictionary' filepath='src.d/deflate.c' line='481' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateGetDictionary@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='482' column='1'/>
+ <parameter type-id='type-id-21' name='dictionary' filepath='src.d/deflate.c' line='483' column='1'/>
+ <parameter type-id='type-id-80' name='dictLength' filepath='src.d/deflate.c' line='484' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflateResetKeep' mangled-name='deflateResetKeep' filepath='src.d/deflate.c' line='503' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='504' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflateReset' mangled-name='deflateReset' filepath='src.d/deflate.c' line='541' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateReset'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='542' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflateSetHeader' mangled-name='deflateSetHeader' filepath='src.d/deflate.c' line='553' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateSetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='554' column='1'/>
+ <parameter type-id='type-id-44' name='head' filepath='src.d/deflate.c' line='555' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflatePending' mangled-name='deflatePending' filepath='src.d/deflate.c' line='564' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflatePending@@ZLIB_1.2.5.1'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='567' column='1'/>
+ <parameter type-id='type-id-81' name='pending' filepath='src.d/deflate.c' line='565' column='1'/>
+ <parameter type-id='type-id-78' name='bits' filepath='src.d/deflate.c' line='566' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflatePrime' mangled-name='deflatePrime' filepath='src.d/deflate.c' line='578' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflatePrime@@ZLIB_1.2.0.8'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='579' column='1'/>
+ <parameter type-id='type-id-22' name='bits' filepath='src.d/deflate.c' line='580' column='1'/>
+ <parameter type-id='type-id-22' name='value' filepath='src.d/deflate.c' line='581' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflateParams' mangled-name='deflateParams' filepath='src.d/deflate.c' line='605' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateParams'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='606' column='1'/>
+ <parameter type-id='type-id-22' name='level' filepath='src.d/deflate.c' line='607' column='1'/>
+ <parameter type-id='type-id-22' name='strategy' filepath='src.d/deflate.c' line='608' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflateTune' mangled-name='deflateTune' filepath='src.d/deflate.c' line='654' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateTune@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='655' column='1'/>
+ <parameter type-id='type-id-22' name='good_length' filepath='src.d/deflate.c' line='656' column='1'/>
+ <parameter type-id='type-id-22' name='max_lazy' filepath='src.d/deflate.c' line='657' column='1'/>
+ <parameter type-id='type-id-22' name='nice_length' filepath='src.d/deflate.c' line='658' column='1'/>
+ <parameter type-id='type-id-22' name='max_chain' filepath='src.d/deflate.c' line='659' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='deflateBound' mangled-name='deflateBound' filepath='src.d/deflate.c' line='696' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/deflate.c' line='697' column='1'/>
+ <parameter type-id='type-id-15' name='sourceLen' filepath='src.d/deflate.c' line='698' column='1'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='deflateCopy' mangled-name='deflateCopy' filepath='src.d/deflate.c' line='1156' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='deflateCopy'>
+ <parameter type-id='type-id-23' name='dest' filepath='src.d/deflate.c' line='1157' column='1'/>
+ <parameter type-id='type-id-23' name='source' filepath='src.d/deflate.c' line='1158' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <typedef-decl name='static_tree_desc' type-id='type-id-85' filepath='src.d/deflate.h' line='84' column='1' id='type-id-83'/>
+ <function-decl name='_tr_init' filepath='src.d/deflate.h' line='294' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-77'/>
+ <return type-id='type-id-87'/>
+ </function-decl>
+ <function-decl name='_tr_flush_block' filepath='src.d/deflate.h' line='296' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-77'/>
+ <parameter type-id='type-id-75'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-87'/>
+ </function-decl>
+ <function-decl name='_tr_flush_bits' filepath='src.d/deflate.h' line='298' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-77'/>
+ <return type-id='type-id-87'/>
+ </function-decl>
+ <function-decl name='_tr_align' filepath='src.d/deflate.h' line='299' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-77'/>
+ <return type-id='type-id-87'/>
+ </function-decl>
+ <function-decl name='_tr_stored_block' filepath='src.d/deflate.h' line='300' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-77'/>
+ <parameter type-id='type-id-75'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-87'/>
+ </function-decl>
+ <function-decl name='crc32' filepath='src.d/zlib.h' line='1727' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-18'/>
+ <parameter type-id='type-id-13'/>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='zcalloc' filepath='src.d/zutil.h' line='261' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-59'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-59'/>
+ </function-decl>
+ <function-decl name='zcfree' filepath='src.d/zutil.h' line='263' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-59'/>
+ <parameter type-id='type-id-59'/>
+ <return type-id='type-id-87'/>
+ </function-decl>
+ <type-decl name='void' id='type-id-87'/>
+ <pointer-type-def type-id='type-id-87' id='type-id-86'/>
+ <function-type size-in-bits='32' id='type-id-82'>
+ <parameter type-id='type-id-59'/>
+ <parameter type-id='type-id-59'/>
+ <return type-id='type-id-87'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-79'>
+ <parameter type-id='type-id-59'/>
+ <parameter type-id='type-id-13'/>
+ <parameter type-id='type-id-13'/>
+ <return type-id='type-id-59'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzclose.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gzFile_s' size-in-bits='128' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='1834' column='1' id='type-id-88'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='1835' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='next' type-id='type-id-89' visibility='default' filepath='src.d/zlib.h' line='1836' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pos' type-id='type-id-9' visibility='default' filepath='src.d/zlib.h' line='1837' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gzFile' type-id='type-id-90' filepath='src.d/zlib.h' line='1302' column='1' id='type-id-91'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='32' id='type-id-90'/>
+ <function-decl name='gzclose' mangled-name='gzclose' filepath='src.d/gzclose.c' line='11' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzclose'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzclose.c' line='12' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclose_r' filepath='src.d/zlib.h' line='1644' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-91'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclose_w' filepath='src.d/zlib.h' line='1645' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-91'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='open' filepath='/usr/include/fcntl.h' line='209' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-22'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='snprintf' filepath='/usr/include/stdio.h' line='385' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-55'/>
+ <parameter type-id='type-id-12'/>
+ <parameter type-id='type-id-24'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/include/stdlib.h' line='672' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='free' filepath='/usr/include/stdlib.h' line='687' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-86'/>
+ <return type-id='type-id-87'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-24'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-7'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzopen' mangled-name='gzopen' filepath='src.d/gzlib.c' line='272' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzopen'>
+ <parameter type-id='type-id-24' name='path' filepath='src.d/gzlib.c' line='273' column='1'/>
+ <parameter type-id='type-id-24' name='mode' filepath='src.d/gzlib.c' line='274' column='1'/>
+ <return type-id='type-id-91'/>
+ </function-decl>
+ <function-decl name='gzopen64' mangled-name='gzopen64' filepath='src.d/gzlib.c' line='280' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzopen64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-24' name='path' filepath='src.d/gzlib.c' line='281' column='1'/>
+ <parameter type-id='type-id-24' name='mode' filepath='src.d/gzlib.c' line='282' column='1'/>
+ <return type-id='type-id-91'/>
+ </function-decl>
+ <function-decl name='gzdopen' mangled-name='gzdopen' filepath='src.d/gzlib.c' line='288' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzdopen'>
+ <parameter type-id='type-id-22' name='fd' filepath='src.d/gzlib.c' line='289' column='1'/>
+ <parameter type-id='type-id-24' name='mode' filepath='src.d/gzlib.c' line='290' column='1'/>
+ <return type-id='type-id-91'/>
+ </function-decl>
+ <function-decl name='gzbuffer' mangled-name='gzbuffer' filepath='src.d/gzlib.c' line='318' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzbuffer@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='319' column='1'/>
+ <parameter type-id='type-id-11' name='size' filepath='src.d/gzlib.c' line='320' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzrewind' mangled-name='gzrewind' filepath='src.d/gzlib.c' line='345' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzrewind'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='346' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzseek64' mangled-name='gzseek64' filepath='src.d/gzlib.c' line='368' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzseek64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='369' column='1'/>
+ <parameter type-id='type-id-9' name='offset' filepath='src.d/gzlib.c' line='370' column='1'/>
+ <parameter type-id='type-id-22' name='whence' filepath='src.d/gzlib.c' line='371' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='gzseek' mangled-name='gzseek' filepath='src.d/gzlib.c' line='445' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzseek'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='446' column='1'/>
+ <parameter type-id='type-id-10' name='offset' filepath='src.d/gzlib.c' line='447' column='1'/>
+ <parameter type-id='type-id-22' name='whence' filepath='src.d/gzlib.c' line='448' column='1'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='gztell64' mangled-name='gztell64' filepath='src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gztell64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='458' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='gztell' mangled-name='gztell' filepath='src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gztell'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='475' column='1'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='gzoffset64' mangled-name='gzoffset64' filepath='src.d/gzlib.c' line='484' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzoffset64@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='485' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='gzoffset' mangled-name='gzoffset' filepath='src.d/gzlib.c' line='507' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzoffset@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='508' column='1'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='gzeof' mangled-name='gzeof' filepath='src.d/gzlib.c' line='517' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzeof'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='518' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzerror' mangled-name='gzerror' filepath='src.d/gzlib.c' line='534' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzerror'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='535' column='1'/>
+ <parameter type-id='type-id-78' name='errnum' filepath='src.d/gzlib.c' line='536' column='1'/>
+ <return type-id='type-id-24'/>
+ </function-decl>
+ <function-decl name='gzclearerr' mangled-name='gzclearerr' filepath='src.d/gzlib.c' line='555' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzclearerr@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzlib.c' line='556' column='1'/>
+ <return type-id='type-id-87'/>
+ </function-decl>
+ <type-decl name='variadic parameter type' id='type-id-92'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1248' is-struct='yes' naming-typedef-id='type-id-93' visibility='default' filepath='src.d/gzguts.h' line='170' column='1' id='type-id-94'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-88' visibility='default' filepath='src.d/gzguts.h' line='172' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='mode' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='fd' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='path' type-id='type-id-55' visibility='default' filepath='src.d/gzguts.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='size' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='180' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='want' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='in' type-id='type-id-89' visibility='default' filepath='src.d/gzguts.h' line='182' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='out' type-id='type-id-89' visibility='default' filepath='src.d/gzguts.h' line='183' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='direct' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='184' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='how' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='start' type-id='type-id-9' visibility='default' filepath='src.d/gzguts.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='eof' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='past' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='level' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='strategy' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='192' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='reset' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='193' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='skip' type-id='type-id-9' visibility='default' filepath='src.d/gzguts.h' line='195' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='seek' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='196' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='err' type-id='type-id-22' visibility='default' filepath='src.d/gzguts.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='msg' type-id='type-id-55' visibility='default' filepath='src.d/gzguts.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='strm' type-id='type-id-72' visibility='default' filepath='src.d/gzguts.h' line='201' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__ssize_t' type-id='type-id-22' filepath='/usr/include/bits/types.h' line='194' column='1' id='type-id-95'/>
+ <typedef-decl name='gz_state' type-id='type-id-94' filepath='src.d/gzguts.h' line='202' column='1' id='type-id-93'/>
+ <typedef-decl name='gz_statep' type-id='type-id-96' filepath='src.d/gzguts.h' line='203' column='1' id='type-id-97'/>
+ <typedef-decl name='ssize_t' type-id='type-id-95' filepath='/usr/include/sys/types.h' line='108' column='1' id='type-id-98'/>
+ <pointer-type-def type-id='type-id-93' size-in-bits='32' id='type-id-96'/>
+ <typedef-decl name='voidp' type-id='type-id-86' filepath='./zconf.h' line='416' column='1' id='type-id-99'/>
+ <function-decl name='memchr' filepath='/usr/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-86'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='read' filepath='/usr/include/unistd.h' line='371' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-86'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-98'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='src.d/gzguts.h' line='206' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-97'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-24'/>
+ <return type-id='type-id-87'/>
+ </function-decl>
+ <function-decl name='gzread' mangled-name='gzread' filepath='src.d/gzread.c' line='373' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzread'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzread.c' line='374' column='1'/>
+ <parameter type-id='type-id-99' name='buf' filepath='src.d/gzread.c' line='375' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzread.c' line='376' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzfread' mangled-name='gzfread' filepath='src.d/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzfread@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-99' name='buf' filepath='src.d/gzread.c' line='410' column='1'/>
+ <parameter type-id='type-id-16' name='size' filepath='src.d/gzread.c' line='411' column='1'/>
+ <parameter type-id='type-id-16' name='nitems' filepath='src.d/gzread.c' line='412' column='1'/>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzread.c' line='413' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='gzgetc' mangled-name='gzgetc' filepath='src.d/gzread.c' line='445' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgetc'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzread.c' line='446' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzgetc_' mangled-name='gzgetc_' filepath='src.d/gzread.c' line='472' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgetc_@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzread.c' line='473' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzungetc' mangled-name='gzungetc' filepath='src.d/gzread.c' line='479' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzungetc@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-22' name='c' filepath='src.d/gzread.c' line='480' column='1'/>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzread.c' line='481' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzgets' mangled-name='gzgets' filepath='src.d/gzread.c' line='539' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzgets'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzread.c' line='540' column='1'/>
+ <parameter type-id='type-id-55' name='buf' filepath='src.d/gzread.c' line='541' column='1'/>
+ <parameter type-id='type-id-22' name='len' filepath='src.d/gzread.c' line='542' column='1'/>
+ <return type-id='type-id-55'/>
+ </function-decl>
+ <function-decl name='gzdirect' mangled-name='gzdirect' filepath='src.d/gzread.c' line='603' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzdirect@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzread.c' line='604' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflate' filepath='src.d/zlib.h' line='400' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-23'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateEnd' filepath='src.d/zlib.h' line='520' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-23'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateReset' filepath='src.d/zlib.h' line='959' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-23'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateInit2_' filepath='src.d/zlib.h' line='1789' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-23'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-55' filepath='/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h' line='40' column='1' id='type-id-100'/>
+ <typedef-decl name='va_list' type-id='type-id-100' filepath='/usr/lib/gcc/x86_64-linux-gnu/13/include/stdarg.h' line='103' column='1' id='type-id-101'/>
+ <typedef-decl name='voidpc' type-id='type-id-86' filepath='./zconf.h' line='414' column='1' id='type-id-102'/>
+ <function-decl name='vsnprintf' filepath='/usr/include/stdio.h' line='389' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-55'/>
+ <parameter type-id='type-id-12'/>
+ <parameter type-id='type-id-24'/>
+ <parameter type-id='type-id-55'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='memmove' filepath='/usr/include/string.h' line='47' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-86'/>
+ <parameter type-id='type-id-86'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-86'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-86'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-98'/>
+ </function-decl>
+ <function-decl name='gzwrite' mangled-name='gzwrite' filepath='src.d/gzwrite.c' line='255' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzwrite'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzwrite.c' line='256' column='1'/>
+ <parameter type-id='type-id-102' name='buf' filepath='src.d/gzwrite.c' line='257' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzfwrite' mangled-name='gzfwrite' filepath='src.d/gzwrite.c' line='283' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzfwrite@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-102' name='buf' filepath='src.d/gzwrite.c' line='284' column='1'/>
+ <parameter type-id='type-id-16' name='size' filepath='src.d/gzwrite.c' line='285' column='1'/>
+ <parameter type-id='type-id-16' name='nitems' filepath='src.d/gzwrite.c' line='286' column='1'/>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='gzputc' mangled-name='gzputc' filepath='src.d/gzwrite.c' line='313' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzputc'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzwrite.c' line='314' column='1'/>
+ <parameter type-id='type-id-22' name='c' filepath='src.d/gzwrite.c' line='315' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzputs' mangled-name='gzputs' filepath='src.d/gzwrite.c' line='361' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzputs'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzwrite.c' line='362' column='1'/>
+ <parameter type-id='type-id-24' name='s' filepath='src.d/gzwrite.c' line='363' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzvprintf' mangled-name='gzvprintf' filepath='src.d/gzwrite.c' line='391' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzvprintf@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-24' name='format' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-101' name='va' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzprintf' mangled-name='gzprintf' filepath='src.d/gzwrite.c' line='463' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzprintf'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter type-id='type-id-24' name='format' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzflush' mangled-name='gzflush' filepath='src.d/gzwrite.c' line='565' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzflush'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzwrite.c' line='566' column='1'/>
+ <parameter type-id='type-id-22' name='flush' filepath='src.d/gzwrite.c' line='567' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzsetparams' mangled-name='gzsetparams' filepath='src.d/gzwrite.c' line='597' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='gzsetparams'>
+ <parameter type-id='type-id-91' name='file' filepath='src.d/gzwrite.c' line='598' column='1'/>
+ <parameter type-id='type-id-22' name='level' filepath='src.d/gzwrite.c' line='599' column='1'/>
+ <parameter type-id='type-id-22' name='strategy' filepath='src.d/gzwrite.c' line='600' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <enum-decl name='codetype' naming-typedef-id='type-id-103' filepath='src.d/inftrees.h' line='54' column='1' id='type-id-104'>
+ <underlying-type type-id='type-id-105'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-106' visibility='default' filepath='src.d/inftrees.h' line='24' column='1' id='type-id-107'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-3' visibility='default' filepath='src.d/inftrees.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-3' visibility='default' filepath='src.d/inftrees.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-71' visibility='default' filepath='src.d/inftrees.h' line='27' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-107' filepath='src.d/inftrees.h' line='28' column='1' id='type-id-106'/>
+ <typedef-decl name='codetype' type-id='type-id-104' filepath='src.d/inftrees.h' line='58' column='1' id='type-id-103'/>
+ <typedef-decl name='in_func' type-id='type-id-108' filepath='src.d/zlib.h' line='1094' column='1' id='type-id-109'/>
+ <typedef-decl name='out_func' type-id='type-id-110' filepath='src.d/zlib.h' line='1096' column='1' id='type-id-111'/>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-105'/>
+ <pointer-type-def type-id='type-id-106' size-in-bits='32' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-112' size-in-bits='32' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-114' size-in-bits='32' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-3' size-in-bits='32' id='type-id-89'/>
+ <pointer-type-def type-id='type-id-89' size-in-bits='32' id='type-id-115'/>
+ <pointer-type-def type-id='type-id-116' size-in-bits='32' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-71' size-in-bits='32' id='type-id-117'/>
+ <typedef-decl name='voidpf' type-id='type-id-86' filepath='./zconf.h' line='415' column='1' id='type-id-118'/>
+ <function-decl name='inflateBackInit_' mangled-name='inflateBackInit_' filepath='src.d/infback.c' line='28' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBackInit_@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/infback.c' line='29' column='1'/>
+ <parameter type-id='type-id-22' name='windowBits' filepath='src.d/infback.c' line='30' column='1'/>
+ <parameter type-id='type-id-89' name='window' filepath='src.d/infback.c' line='31' column='1'/>
+ <parameter type-id='type-id-24' name='version' filepath='src.d/infback.c' line='32' column='1'/>
+ <parameter type-id='type-id-22' name='stream_size' filepath='src.d/infback.c' line='33' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateBack' mangled-name='inflateBack' filepath='src.d/infback.c' line='251' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBack@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/infback.c' line='252' column='1'/>
+ <parameter type-id='type-id-109' name='in' filepath='src.d/infback.c' line='253' column='1'/>
+ <parameter type-id='type-id-86' name='in_desc' filepath='src.d/infback.c' line='254' column='1'/>
+ <parameter type-id='type-id-111' name='out' filepath='src.d/infback.c' line='255' column='1'/>
+ <parameter type-id='type-id-86' name='out_desc' filepath='src.d/infback.c' line='256' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateBackEnd' mangled-name='inflateBackEnd' filepath='src.d/infback.c' line='635' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateBackEnd@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/infback.c' line='636' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflate_fast' filepath='src.d/inffast.h' line='11' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-23'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-87'/>
+ </function-decl>
+ <function-decl name='inflate_table' filepath='src.d/inftrees.h' line='60' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-103'/>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-113'/>
+ <parameter type-id='type-id-81'/>
+ <parameter type-id='type-id-117'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-114'>
+ <parameter type-id='type-id-86'/>
+ <parameter type-id='type-id-89'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-22'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-116'>
+ <parameter type-id='type-id-86'/>
+ <parameter type-id='type-id-115'/>
+ <return type-id='type-id-11'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpf' type-id='type-id-86' filepath='./zconf.h' line='415' column='1' id='type-id-119'/>
+ <function-decl name='inflateResetKeep' mangled-name='inflateResetKeep' filepath='src.d/inflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='120' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateReset2' mangled-name='inflateReset2' filepath='src.d/inflate.c' line='158' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateReset2@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='159' column='1'/>
+ <parameter type-id='type-id-22' name='windowBits' filepath='src.d/inflate.c' line='160' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateInit_' mangled-name='inflateInit_' filepath='src.d/inflate.c' line='242' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateInit_'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-24' name='version' filepath='src.d/inflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-22' name='stream_size' filepath='src.d/inflate.c' line='245' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflatePrime' mangled-name='inflatePrime' filepath='src.d/inflate.c' line='250' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflatePrime@@ZLIB_1.2.2.4'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='251' column='1'/>
+ <parameter type-id='type-id-22' name='bits' filepath='src.d/inflate.c' line='252' column='1'/>
+ <parameter type-id='type-id-22' name='value' filepath='src.d/inflate.c' line='253' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateGetDictionary' mangled-name='inflateGetDictionary' filepath='src.d/inflate.c' line='1318' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateGetDictionary@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='1319' column='1'/>
+ <parameter type-id='type-id-21' name='dictionary' filepath='src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-80' name='dictLength' filepath='src.d/inflate.c' line='1321' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateSetDictionary' mangled-name='inflateSetDictionary' filepath='src.d/inflate.c' line='1341' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSetDictionary'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='1342' column='1'/>
+ <parameter type-id='type-id-18' name='dictionary' filepath='src.d/inflate.c' line='1343' column='1'/>
+ <parameter type-id='type-id-13' name='dictLength' filepath='src.d/inflate.c' line='1344' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateGetHeader' mangled-name='inflateGetHeader' filepath='src.d/inflate.c' line='1376' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateGetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='1377' column='1'/>
+ <parameter type-id='type-id-44' name='head' filepath='src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateSync' mangled-name='inflateSync' filepath='src.d/inflate.c' line='1427' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSync'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='1428' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateSyncPoint' mangled-name='inflateSyncPoint' filepath='src.d/inflate.c' line='1485' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateSyncPoint'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='1486' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateCopy' mangled-name='inflateCopy' filepath='src.d/inflate.c' line='1495' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateCopy@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-23' name='dest' filepath='src.d/inflate.c' line='1496' column='1'/>
+ <parameter type-id='type-id-23' name='source' filepath='src.d/inflate.c' line='1497' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateUndermine' mangled-name='inflateUndermine' filepath='src.d/inflate.c' line='1542' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateUndermine@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='1543' column='1'/>
+ <parameter type-id='type-id-22' name='subvert' filepath='src.d/inflate.c' line='1544' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateValidate' mangled-name='inflateValidate' filepath='src.d/inflate.c' line='1560' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateValidate@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='1561' column='1'/>
+ <parameter type-id='type-id-22' name='check' filepath='src.d/inflate.c' line='1562' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='inflateMark' mangled-name='inflateMark' filepath='src.d/inflate.c' line='1575' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateMark@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='1576' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='inflateCodesUsed' mangled-name='inflateCodesUsed' filepath='src.d/inflate.c' line='1588' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='inflateCodesUsed@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-23' name='strm' filepath='src.d/inflate.c' line='1589' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-120' size-in-bits='2048' id='type-id-121'>
+ <subrange length='256' lower-bound='0' upper-bound='255' type-id='type-id-11' id='type-id-122'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-120' size-in-bits='4096' id='type-id-123'>
+ <subrange length='512' lower-bound='0' upper-bound='511' type-id='type-id-11' id='type-id-124'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-120' size-in-bits='unknown' id='type-id-125'>
+ <subrange length='unknown' lower-bound='0' upper-bound='0' id='type-id-126'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-69' const='yes' id='type-id-120'/>
+ <var-decl name='_length_code' type-id='type-id-121' visibility='default' filepath='src.d/deflate.h' line='317' column='1'/>
+ <var-decl name='_dist_code' type-id='type-id-123' visibility='default' filepath='src.d/deflate.h' line='318' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-15' size-in-bits='32' id='type-id-127'/>
+ <function-decl name='uncompress2' mangled-name='uncompress2' filepath='src.d/uncompr.c' line='27' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='uncompress2@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/uncompr.c' line='28' column='1'/>
+ <parameter type-id='type-id-20' name='destLen' filepath='src.d/uncompr.c' line='29' column='1'/>
+ <parameter type-id='type-id-18' name='source' filepath='src.d/uncompr.c' line='30' column='1'/>
+ <parameter type-id='type-id-127' name='sourceLen' filepath='src.d/uncompr.c' line='31' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='uncompress' mangled-name='uncompress' filepath='src.d/uncompr.c' line='86' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='uncompress'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/uncompr.c' line='87' column='1'/>
+ <parameter type-id='type-id-20' name='destLen' filepath='src.d/uncompr.c' line='88' column='1'/>
+ <parameter type-id='type-id-18' name='source' filepath='src.d/uncompr.c' line='89' column='1'/>
+ <parameter type-id='type-id-15' name='sourceLen' filepath='src.d/uncompr.c' line='90' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-128' size-in-bits='320' id='type-id-129'>
+ <subrange length='10' lower-bound='0' upper-bound='9' type-id='type-id-11' id='type-id-130'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-55' const='yes' id='type-id-128'/>
+ <function-decl name='zlibVersion' mangled-name='zlibVersion' filepath='src.d/zutil.c' line='27' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibVersion'>
+ <return type-id='type-id-24'/>
+ </function-decl>
+ <function-decl name='zlibCompileFlags' mangled-name='zlibCompileFlags' filepath='src.d/zutil.c' line='32' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibCompileFlags@@ZLIB_1.2.0.2'>
+ <return type-id='type-id-15'/>
+ </function-decl>
+ <function-decl name='zError' mangled-name='zError' filepath='src.d/zutil.c' line='135' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zError'>
+ <parameter type-id='type-id-22' name='err' filepath='src.d/zutil.c' line='136' column='1'/>
+ <return type-id='type-id-24'/>
+ </function-decl>
+ <var-decl name='z_errmsg' type-id='type-id-129' visibility='default' filepath='src.d/zutil.h' line='56' column='1'/>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-x86_64-pc-linux-gnu.abi b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-x86_64-pc-linux-gnu.abi
new file mode 100644
index 0000000000..8152352c19
--- /dev/null
+++ b/neozip/test/abi/zlib-04f42ceca40f73e2978b50e93806c2a18c1281fc-x86_64-pc-linux-gnu.abi
@@ -0,0 +1,1288 @@
+<abi-corpus version='2.2' path='btmp1/libz.so.1.2.13' architecture='elf-amd-x86_64' soname='libz.so.1'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='adler32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='adler32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compress2' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='compressBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen64' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_gen' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_combine_op' version='ZLIB_1.2.12' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='crc32_z' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateBound' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateCopy' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateGetDictionary' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateParams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePending' version='ZLIB_1.2.5.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflatePrime' version='ZLIB_1.2.0.8' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateSetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='deflateTune' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='get_crc_table' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzbuffer' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclearerr' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_r' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzclose_w' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdirect' version='ZLIB_1.2.2.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzdopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzeof' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzerror' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzflush' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfread' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzfwrite' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgetc_' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzgets' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset64' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzoffset' version='ZLIB_1.2.3.5' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzopen64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzprintf' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputc' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzputs' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzread' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzrewind' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzseek64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzsetparams' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gztell64' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzungetc' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzvprintf' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='gzwrite' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflate' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBack' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackEnd' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateBackInit_' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCodesUsed' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateCopy' version='ZLIB_1.2.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateEnd' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetDictionary' version='ZLIB_1.2.7.1' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateGetHeader' version='ZLIB_1.2.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit2_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateInit_' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateMark' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflatePrime' version='ZLIB_1.2.2.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateReset2' version='ZLIB_1.2.3.4' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateResetKeep' version='ZLIB_1.2.5.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSetDictionary' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSync' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateSyncPoint' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateUndermine' version='ZLIB_1.2.3.3' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='inflateValidate' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='uncompress2' version='ZLIB_1.2.9' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zError' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibCompileFlags' version='ZLIB_1.2.0.2' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zlibVersion' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <abi-instr address-size='64' path='src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-1'/>
+ <typedef-decl name='Byte' type-id='type-id-2' filepath='./zconf.h' line='397' column='1' id='type-id-3'/>
+ <typedef-decl name='Bytef' type-id='type-id-3' filepath='./zconf.h' line='406' column='1' id='type-id-4'/>
+ <typedef-decl name='__off64_t' type-id='type-id-1' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='153' column='1' id='type-id-5'/>
+ <typedef-decl name='__off_t' type-id='type-id-1' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='152' column='1' id='type-id-6'/>
+ <typedef-decl name='off64_t' type-id='type-id-5' filepath='/usr/include/x86_64-linux-gnu/sys/types.h' line='92' column='1' id='type-id-7'/>
+ <typedef-decl name='off_t' type-id='type-id-6' filepath='/usr/include/x86_64-linux-gnu/sys/types.h' line='85' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-9' filepath='/usr/lib/gcc/x86_64-linux-gnu/13/include/stddef.h' line='214' column='1' id='type-id-10'/>
+ <typedef-decl name='uInt' type-id='type-id-11' filepath='./zconf.h' line='399' column='1' id='type-id-12'/>
+ <typedef-decl name='uLong' type-id='type-id-9' filepath='./zconf.h' line='400' column='1' id='type-id-13'/>
+ <typedef-decl name='z_size_t' type-id='type-id-10' filepath='./zconf.h' line='251' column='1' id='type-id-14'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-11'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-4' const='yes' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-15' size-in-bits='64' id='type-id-16'/>
+ <function-decl name='adler32_z' mangled-name='adler32_z' filepath='src.d/adler32.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='64' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='65' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/adler32.c' line='66' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32' mangled-name='adler32' filepath='src.d/adler32.c' line='134' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32'>
+ <parameter type-id='type-id-13' name='adler' filepath='src.d/adler32.c' line='135' column='1'/>
+ <parameter type-id='type-id-16' name='buf' filepath='src.d/adler32.c' line='136' column='1'/>
+ <parameter type-id='type-id-12' name='len' filepath='src.d/adler32.c' line='137' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine' mangled-name='adler32_combine' filepath='src.d/adler32.c' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='173' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='174' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/adler32.c' line='175' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='adler32_combine64' mangled-name='adler32_combine64' filepath='src.d/adler32.c' line='180' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='adler32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='adler1' filepath='src.d/adler32.c' line='181' column='1'/>
+ <parameter type-id='type-id-13' name='adler2' filepath='src.d/adler32.c' line='182' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/adler32.c' line='183' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='uLongf' type-id='type-id-13' filepath='./zconf.h' line='411' column='1' id='type-id-17'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-18'/>
+ <function-decl name='compress2' mangled-name='compress2' filepath='src.d/compress.c' line='22' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compress2'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='23' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='24' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='26' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/compress.c' line='27' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compress' mangled-name='compress' filepath='src.d/compress.c' line='68' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/compress.c' line='69' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/compress.c' line='70' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/compress.c' line='71' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='72' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='compressBound' mangled-name='compressBound' filepath='src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='compressBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/compress.c' line='82' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflate' filepath='src.d/zlib.h' line='250' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateEnd' filepath='src.d/zlib.h' line='363' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateInit_' filepath='src.d/zlib.h' line='1781' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/crc32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='z_crc_t' type-id='type-id-11' filepath='./zconf.h' line='435' column='1' id='type-id-23'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-24'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-25'/>
+ <qualified-type-def type-id='type-id-23' const='yes' id='type-id-26'/>
+ <pointer-type-def type-id='type-id-26' size-in-bits='64' id='type-id-27'/>
+ <function-decl name='get_crc_table' mangled-name='get_crc_table' filepath='src.d/crc32.c' line='595' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='get_crc_table'>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='crc32_z' mangled-name='crc32_z' filepath='src.d/crc32.c' line='748' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_z@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-9' name='crc' filepath='src.d/crc32.c' line='749' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='750' column='1'/>
+ <parameter type-id='type-id-14' name='len' filepath='src.d/crc32.c' line='751' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32' mangled-name='crc32' filepath='src.d/crc32.c' line='1072' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32'>
+ <parameter type-id='type-id-9' name='crc' filepath='src.d/crc32.c' line='1073' column='1'/>
+ <parameter type-id='type-id-25' name='buf' filepath='src.d/crc32.c' line='1074' column='1'/>
+ <parameter type-id='type-id-12' name='len' filepath='src.d/crc32.c' line='1075' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine64' mangled-name='crc32_combine64' filepath='src.d/crc32.c' line='1081' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1082' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1083' column='1'/>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1084' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine' mangled-name='crc32_combine' filepath='src.d/crc32.c' line='1093' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1094' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1095' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1096' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen64' mangled-name='crc32_combine_gen64' filepath='src.d/crc32.c' line='1102' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_gen64@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-7' name='len2' filepath='src.d/crc32.c' line='1103' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_gen' mangled-name='crc32_combine_gen' filepath='src.d/crc32.c' line='1112' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_gen@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-8' name='len2' filepath='src.d/crc32.c' line='1113' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='crc32_combine_op' mangled-name='crc32_combine_op' filepath='src.d/crc32.c' line='1119' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='crc32_combine_op@@ZLIB_1.2.12'>
+ <parameter type-id='type-id-13' name='crc1' filepath='src.d/crc32.c' line='1120' column='1'/>
+ <parameter type-id='type-id-13' name='crc2' filepath='src.d/crc32.c' line='1121' column='1'/>
+ <parameter type-id='type-id-13' name='op' filepath='src.d/crc32.c' line='1122' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-28'/>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1248' id='type-id-30'>
+ <subrange length='39' lower-bound='0' upper-bound='38' type-id='type-id-9' id='type-id-31'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='18336' id='type-id-32'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-29' size-in-bits='1952' id='type-id-34'>
+ <subrange length='61' lower-bound='0' upper-bound='60' type-id='type-id-9' id='type-id-35'/>
+ </array-type-def>
+ <type-decl name='int' size-in-bits='32' id='type-id-20'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-36'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='68' column='1' id='type-id-29'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-37' visibility='default' filepath='src.d/deflate.h' line='72' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-38' visibility='default' filepath='src.d/deflate.h' line='76' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='gz_header_s' size-in-bits='640' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='114' column='1' id='type-id-39'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='time' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='xflags' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='os' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='extra_len' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='extra_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='name' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='name_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='comment' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='comm_max' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='hcrc' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='done' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='127' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='internal_state' size-in-bits='47616' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='100' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-21' visibility='default' filepath='src.d/deflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='status' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_buf' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='pending_buf_size' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='pending_out' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='pending' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='106' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='wrap' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='gzhead' type-id='type-id-42' visibility='default' filepath='src.d/deflate.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='gzindex' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='method' type-id='type-id-3' visibility='default' filepath='src.d/deflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='last_flush' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='w_size' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='w_bits' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='w_mask' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='window' type-id='type-id-19' visibility='default' filepath='src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='window_size' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='prev' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='head' type-id='type-id-43' visibility='default' filepath='src.d/deflate.h' line='140' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='ins_h' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='142' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='hash_size' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='143' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='hash_bits' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='144' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='hash_mask' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='hash_shift' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='147' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='block_start' type-id='type-id-1' visibility='default' filepath='src.d/deflate.h' line='154' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='match_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='159' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='prev_match' type-id='type-id-44' visibility='default' filepath='src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='match_available' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='161' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1376'>
+ <var-decl name='strstart' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='162' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='match_start' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='163' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='lookahead' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='164' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='prev_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='max_chain_length' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='171' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='max_lazy_match' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1568'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1600'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1632'>
+ <var-decl name='good_match' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1664'>
+ <var-decl name='nice_match' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='194' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1696'>
+ <var-decl name='dyn_ltree' type-id='type-id-32' visibility='default' filepath='src.d/deflate.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20032'>
+ <var-decl name='dyn_dtree' type-id='type-id-34' visibility='default' filepath='src.d/deflate.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='21984'>
+ <var-decl name='bl_tree' type-id='type-id-30' visibility='default' filepath='src.d/deflate.h' line='200' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23232'>
+ <var-decl name='l_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23424'>
+ <var-decl name='d_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23616'>
+ <var-decl name='bl_desc' type-id='type-id-45' visibility='default' filepath='src.d/deflate.h' line='204' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23808'>
+ <var-decl name='bl_count' type-id='type-id-46' visibility='default' filepath='src.d/deflate.h' line='206' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24064'>
+ <var-decl name='heap' type-id='type-id-36' visibility='default' filepath='src.d/deflate.h' line='209' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42400'>
+ <var-decl name='heap_len' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42432'>
+ <var-decl name='heap_max' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='211' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42464'>
+ <var-decl name='depth' type-id='type-id-47' visibility='default' filepath='src.d/deflate.h' line='216' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47104'>
+ <var-decl name='sym_buf' type-id='type-id-48' visibility='default' filepath='src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47168'>
+ <var-decl name='lit_bufsize' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='222' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47200'>
+ <var-decl name='sym_next' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='242' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47232'>
+ <var-decl name='sym_end' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='243' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47296'>
+ <var-decl name='opt_len' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='245' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47360'>
+ <var-decl name='static_len' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='246' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47424'>
+ <var-decl name='matches' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='247' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47456'>
+ <var-decl name='insert' type-id='type-id-12' visibility='default' filepath='src.d/deflate.h' line='248' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47488'>
+ <var-decl name='bi_buf' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='255' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47520'>
+ <var-decl name='bi_valid' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='259' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47552'>
+ <var-decl name='high_water' type-id='type-id-41' visibility='default' filepath='src.d/deflate.h' line='264' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='tree_desc_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='src.d/deflate.h' line='86' column='1' id='type-id-45'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-50' visibility='default' filepath='src.d/deflate.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='max_code' type-id='type-id-20' visibility='default' filepath='src.d/deflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='stat_desc' type-id='type-id-51' visibility='default' filepath='src.d/deflate.h' line='89' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='z_stream_s' size-in-bits='896' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='86' column='1' id='type-id-52'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='87' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='avail_in' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='total_in' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='next_out' type-id='type-id-19' visibility='default' filepath='src.d/zlib.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='avail_out' type-id='type-id-12' visibility='default' filepath='src.d/zlib.h' line='92' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total_out' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='msg' type-id='type-id-53' visibility='default' filepath='src.d/zlib.h' line='95' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='state' type-id='type-id-54' visibility='default' filepath='src.d/zlib.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='zalloc' type-id='type-id-55' visibility='default' filepath='src.d/zlib.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='zfree' type-id='type-id-56' visibility='default' filepath='src.d/zlib.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='opaque' type-id='type-id-57' visibility='default' filepath='src.d/zlib.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='data_type' type-id='type-id-20' visibility='default' filepath='src.d/zlib.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='adler' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='reserved' type-id='type-id-13' visibility='default' filepath='src.d/zlib.h' line='105' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='IPos' type-id='type-id-11' filepath='src.d/deflate.h' line='94' column='1' id='type-id-44'/>
+ <typedef-decl name='Pos' type-id='type-id-49' filepath='src.d/deflate.h' line='92' column='1' id='type-id-58'/>
+ <typedef-decl name='Posf' type-id='type-id-58' filepath='src.d/deflate.h' line='93' column='1' id='type-id-59'/>
+ <typedef-decl name='alloc_func' type-id='type-id-60' filepath='src.d/zlib.h' line='81' column='1' id='type-id-55'/>
+ <typedef-decl name='charf' type-id='type-id-28' filepath='./zconf.h' line='408' column='1' id='type-id-61'/>
+ <typedef-decl name='ct_data' type-id='type-id-29' filepath='src.d/deflate.h' line='77' column='1' id='type-id-62'/>
+ <typedef-decl name='deflate_state' type-id='type-id-40' filepath='src.d/deflate.h' line='271' column='1' id='type-id-63'/>
+ <typedef-decl name='free_func' type-id='type-id-64' filepath='src.d/zlib.h' line='82' column='1' id='type-id-56'/>
+ <typedef-decl name='gz_header' type-id='type-id-39' filepath='src.d/zlib.h' line='129' column='1' id='type-id-65'/>
+ <typedef-decl name='gz_headerp' type-id='type-id-66' filepath='src.d/zlib.h' line='131' column='1' id='type-id-42'/>
+ <typedef-decl name='uch' type-id='type-id-2' filepath='src.d/zutil.h' line='39' column='1' id='type-id-67'/>
+ <typedef-decl name='uchf' type-id='type-id-67' filepath='src.d/zutil.h' line='40' column='1' id='type-id-68'/>
+ <typedef-decl name='ulg' type-id='type-id-9' filepath='src.d/zutil.h' line='43' column='1' id='type-id-41'/>
+ <typedef-decl name='ush' type-id='type-id-69' filepath='src.d/zutil.h' line='41' column='1' id='type-id-49'/>
+ <typedef-decl name='z_stream' type-id='type-id-52' filepath='src.d/zlib.h' line='106' column='1' id='type-id-70'/>
+ <typedef-decl name='z_streamp' type-id='type-id-71' filepath='src.d/zlib.h' line='108' column='1' id='type-id-21'/>
+ <array-type-def dimensions='1' type-id='type-id-67' size-in-bits='4584' id='type-id-47'>
+ <subrange length='573' lower-bound='0' upper-bound='572' type-id='type-id-9' id='type-id-33'/>
+ </array-type-def>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='73' column='1' id='type-id-38'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='74' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='75' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='src.d/deflate.h' line='69' column='1' id='type-id-37'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='70' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-49' visibility='default' filepath='src.d/deflate.h' line='71' column='1'/>
+ </data-member>
+ </union-decl>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-69'/>
+ <array-type-def dimensions='1' type-id='type-id-49' size-in-bits='256' id='type-id-46'>
+ <subrange length='16' lower-bound='0' upper-bound='15' type-id='type-id-9' id='type-id-72'/>
+ </array-type-def>
+ <pointer-type-def type-id='type-id-4' size-in-bits='64' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-59' size-in-bits='64' id='type-id-43'/>
+ <pointer-type-def type-id='type-id-28' size-in-bits='64' id='type-id-53'/>
+ <pointer-type-def type-id='type-id-61' size-in-bits='64' id='type-id-73'/>
+ <qualified-type-def type-id='type-id-28' const='yes' id='type-id-74'/>
+ <pointer-type-def type-id='type-id-74' size-in-bits='64' id='type-id-22'/>
+ <pointer-type-def type-id='type-id-62' size-in-bits='64' id='type-id-50'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-65' size-in-bits='64' id='type-id-66'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-40' size-in-bits='64' id='type-id-54'/>
+ <pointer-type-def type-id='type-id-77' size-in-bits='64' id='type-id-60'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-68' size-in-bits='64' id='type-id-48'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-80' size-in-bits='64' id='type-id-64'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='64' id='type-id-71'/>
+ <qualified-type-def type-id='type-id-81' const='yes' id='type-id-82'/>
+ <pointer-type-def type-id='type-id-82' size-in-bits='64' id='type-id-51'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-83'/>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-57'/>
+ <function-decl name='memcpy' filepath='/usr/include/string.h' line='43' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='memset' filepath='/usr/include/string.h' line='61' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='deflateInit2_' mangled-name='deflateInit2_' filepath='src.d/deflate.c' line='237' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateInit2_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='239' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='240' column='1'/>
+ <parameter type-id='type-id-20' name='method' filepath='src.d/deflate.c' line='241' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/deflate.c' line='242' column='1'/>
+ <parameter type-id='type-id-20' name='memLevel' filepath='src.d/deflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/deflate.c' line='245' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/deflate.c' line='246' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetDictionary' mangled-name='deflateSetDictionary' filepath='src.d/deflate.c' line='412' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='413' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/deflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-12' name='dictLength' filepath='src.d/deflate.c' line='415' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateGetDictionary' mangled-name='deflateGetDictionary' filepath='src.d/deflate.c' line='481' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateGetDictionary@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='482' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/deflate.c' line='483' column='1'/>
+ <parameter type-id='type-id-78' name='dictLength' filepath='src.d/deflate.c' line='484' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateResetKeep' mangled-name='deflateResetKeep' filepath='src.d/deflate.c' line='503' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='504' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateReset' mangled-name='deflateReset' filepath='src.d/deflate.c' line='541' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateReset'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='542' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateSetHeader' mangled-name='deflateSetHeader' filepath='src.d/deflate.c' line='553' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateSetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='554' column='1'/>
+ <parameter type-id='type-id-42' name='head' filepath='src.d/deflate.c' line='555' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePending' mangled-name='deflatePending' filepath='src.d/deflate.c' line='564' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflatePending@@ZLIB_1.2.5.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='567' column='1'/>
+ <parameter type-id='type-id-79' name='pending' filepath='src.d/deflate.c' line='565' column='1'/>
+ <parameter type-id='type-id-76' name='bits' filepath='src.d/deflate.c' line='566' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflatePrime' mangled-name='deflatePrime' filepath='src.d/deflate.c' line='578' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflatePrime@@ZLIB_1.2.0.8'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='579' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/deflate.c' line='580' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/deflate.c' line='581' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateParams' mangled-name='deflateParams' filepath='src.d/deflate.c' line='605' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateParams'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='606' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/deflate.c' line='607' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/deflate.c' line='608' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateTune' mangled-name='deflateTune' filepath='src.d/deflate.c' line='654' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateTune@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='655' column='1'/>
+ <parameter type-id='type-id-20' name='good_length' filepath='src.d/deflate.c' line='656' column='1'/>
+ <parameter type-id='type-id-20' name='max_lazy' filepath='src.d/deflate.c' line='657' column='1'/>
+ <parameter type-id='type-id-20' name='nice_length' filepath='src.d/deflate.c' line='658' column='1'/>
+ <parameter type-id='type-id-20' name='max_chain' filepath='src.d/deflate.c' line='659' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='deflateBound' mangled-name='deflateBound' filepath='src.d/deflate.c' line='696' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateBound@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/deflate.c' line='697' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/deflate.c' line='698' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='deflateCopy' mangled-name='deflateCopy' filepath='src.d/deflate.c' line='1156' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='deflateCopy'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/deflate.c' line='1157' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/deflate.c' line='1158' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <typedef-decl name='static_tree_desc' type-id='type-id-83' filepath='src.d/deflate.h' line='84' column='1' id='type-id-81'/>
+ <function-decl name='_tr_init' filepath='src.d/deflate.h' line='294' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_flush_block' filepath='src.d/deflate.h' line='296' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_flush_bits' filepath='src.d/deflate.h' line='298' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_align' filepath='src.d/deflate.h' line='299' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='_tr_stored_block' filepath='src.d/deflate.h' line='300' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-75'/>
+ <parameter type-id='type-id-73'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='crc32' filepath='src.d/zlib.h' line='1727' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-13'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zcalloc' filepath='src.d/zutil.h' line='261' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-57'/>
+ </function-decl>
+ <function-decl name='zcfree' filepath='src.d/zutil.h' line='263' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-57'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <type-decl name='void' id='type-id-85'/>
+ <pointer-type-def type-id='type-id-85' id='type-id-84'/>
+ <function-type size-in-bits='64' id='type-id-80'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-57'/>
+ <return type-id='type-id-85'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-77'>
+ <parameter type-id='type-id-57'/>
+ <parameter type-id='type-id-12'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-57'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzclose.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gzFile_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='src.d/zlib.h' line='1834' column='1' id='type-id-86'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-11' visibility='default' filepath='src.d/zlib.h' line='1835' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='next' type-id='type-id-87' visibility='default' filepath='src.d/zlib.h' line='1836' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pos' type-id='type-id-7' visibility='default' filepath='src.d/zlib.h' line='1837' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gzFile' type-id='type-id-88' filepath='src.d/zlib.h' line='1302' column='1' id='type-id-89'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='64' id='type-id-88'/>
+ <function-decl name='gzclose' mangled-name='gzclose' filepath='src.d/gzclose.c' line='11' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzclose'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzclose.c' line='12' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_r' filepath='src.d/zlib.h' line='1644' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzclose_w' filepath='src.d/zlib.h' line='1645' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='open' filepath='/usr/include/fcntl.h' line='209' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='snprintf' filepath='/usr/include/stdio.h' line='385' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-53'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/include/stdlib.h' line='672' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='free' filepath='/usr/include/stdlib.h' line='687' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-5'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='gzopen' mangled-name='gzopen' filepath='src.d/gzlib.c' line='272' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzopen'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='273' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='274' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzopen64' mangled-name='gzopen64' filepath='src.d/gzlib.c' line='280' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzopen64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-22' name='path' filepath='src.d/gzlib.c' line='281' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='282' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzdopen' mangled-name='gzdopen' filepath='src.d/gzlib.c' line='288' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzdopen'>
+ <parameter type-id='type-id-20' name='fd' filepath='src.d/gzlib.c' line='289' column='1'/>
+ <parameter type-id='type-id-22' name='mode' filepath='src.d/gzlib.c' line='290' column='1'/>
+ <return type-id='type-id-89'/>
+ </function-decl>
+ <function-decl name='gzbuffer' mangled-name='gzbuffer' filepath='src.d/gzlib.c' line='318' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzbuffer@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='319' column='1'/>
+ <parameter type-id='type-id-11' name='size' filepath='src.d/gzlib.c' line='320' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzrewind' mangled-name='gzrewind' filepath='src.d/gzlib.c' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzrewind'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='346' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzseek64' mangled-name='gzseek64' filepath='src.d/gzlib.c' line='368' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzseek64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='369' column='1'/>
+ <parameter type-id='type-id-7' name='offset' filepath='src.d/gzlib.c' line='370' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='371' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzseek' mangled-name='gzseek' filepath='src.d/gzlib.c' line='445' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzseek'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='446' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='src.d/gzlib.c' line='447' column='1'/>
+ <parameter type-id='type-id-20' name='whence' filepath='src.d/gzlib.c' line='448' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gztell64' mangled-name='gztell64' filepath='src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gztell64@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='458' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gztell' mangled-name='gztell' filepath='src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gztell'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='475' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzoffset64' mangled-name='gzoffset64' filepath='src.d/gzlib.c' line='484' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzoffset64@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='485' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='gzoffset' mangled-name='gzoffset' filepath='src.d/gzlib.c' line='507' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzoffset@@ZLIB_1.2.3.5'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='508' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='gzeof' mangled-name='gzeof' filepath='src.d/gzlib.c' line='517' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzeof'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='518' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzerror' mangled-name='gzerror' filepath='src.d/gzlib.c' line='534' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzerror'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='535' column='1'/>
+ <parameter type-id='type-id-76' name='errnum' filepath='src.d/gzlib.c' line='536' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='gzclearerr' mangled-name='gzclearerr' filepath='src.d/gzlib.c' line='555' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzclearerr@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzlib.c' line='556' column='1'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <type-decl name='variadic parameter type' id='type-id-90'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1920' is-struct='yes' naming-typedef-id='type-id-91' visibility='default' filepath='src.d/gzguts.h' line='170' column='1' id='type-id-92'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-86' visibility='default' filepath='src.d/gzguts.h' line='172' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='mode' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='fd' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='path' type-id='type-id-53' visibility='default' filepath='src.d/gzguts.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='size' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='180' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='want' type-id='type-id-11' visibility='default' filepath='src.d/gzguts.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='in' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='182' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='out' type-id='type-id-87' visibility='default' filepath='src.d/gzguts.h' line='183' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='direct' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='184' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='how' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='start' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='187' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='eof' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='188' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='past' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='189' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='level' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='strategy' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='192' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reset' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='193' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='skip' type-id='type-id-7' visibility='default' filepath='src.d/gzguts.h' line='195' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='seek' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='196' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='err' type-id='type-id-20' visibility='default' filepath='src.d/gzguts.h' line='198' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='msg' type-id='type-id-53' visibility='default' filepath='src.d/gzguts.h' line='199' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='strm' type-id='type-id-70' visibility='default' filepath='src.d/gzguts.h' line='201' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__ssize_t' type-id='type-id-1' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='194' column='1' id='type-id-93'/>
+ <typedef-decl name='gz_state' type-id='type-id-92' filepath='src.d/gzguts.h' line='202' column='1' id='type-id-91'/>
+ <typedef-decl name='gz_statep' type-id='type-id-94' filepath='src.d/gzguts.h' line='203' column='1' id='type-id-95'/>
+ <typedef-decl name='ssize_t' type-id='type-id-93' filepath='/usr/include/x86_64-linux-gnu/sys/types.h' line='108' column='1' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-91' size-in-bits='64' id='type-id-94'/>
+ <typedef-decl name='voidp' type-id='type-id-84' filepath='./zconf.h' line='416' column='1' id='type-id-97'/>
+ <function-decl name='__errno_location' filepath='/usr/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-76'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-53'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='read' filepath='/usr/include/unistd.h' line='371' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-96'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='src.d/gzguts.h' line='206' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='gzread' mangled-name='gzread' filepath='src.d/gzread.c' line='373' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzread'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='374' column='1'/>
+ <parameter type-id='type-id-97' name='buf' filepath='src.d/gzread.c' line='375' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzread.c' line='376' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfread' mangled-name='gzfread' filepath='src.d/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzfread@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-97' name='buf' filepath='src.d/gzread.c' line='410' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzread.c' line='411' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzread.c' line='412' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='413' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzgetc' mangled-name='gzgetc' filepath='src.d/gzread.c' line='445' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgetc'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='446' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgetc_' mangled-name='gzgetc_' filepath='src.d/gzread.c' line='472' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgetc_@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='473' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzungetc' mangled-name='gzungetc' filepath='src.d/gzread.c' line='479' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzungetc@@ZLIB_1.2.0.2'>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzread.c' line='480' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='481' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzgets' mangled-name='gzgets' filepath='src.d/gzread.c' line='539' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzgets'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='540' column='1'/>
+ <parameter type-id='type-id-53' name='buf' filepath='src.d/gzread.c' line='541' column='1'/>
+ <parameter type-id='type-id-20' name='len' filepath='src.d/gzread.c' line='542' column='1'/>
+ <return type-id='type-id-53'/>
+ </function-decl>
+ <function-decl name='gzdirect' mangled-name='gzdirect' filepath='src.d/gzread.c' line='603' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzdirect@@ZLIB_1.2.2.3'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzread.c' line='604' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate' filepath='src.d/zlib.h' line='400' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateEnd' filepath='src.d/zlib.h' line='520' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset' filepath='src.d/zlib.h' line='959' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit2_' filepath='src.d/zlib.h' line='1789' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='__va_list_tag' size-in-bits='192' is-struct='yes' visibility='default' id='type-id-98'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='gp_offset' type-id='type-id-11' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='fp_offset' type-id='type-id-11' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='overflow_arg_area' type-id='type-id-84' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='reg_save_area' type-id='type-id-84' visibility='default'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-98' size-in-bits='64' id='type-id-99'/>
+ <typedef-decl name='voidpc' type-id='type-id-84' filepath='./zconf.h' line='414' column='1' id='type-id-100'/>
+ <function-decl name='vsnprintf' filepath='/usr/include/stdio.h' line='389' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-53'/>
+ <parameter type-id='type-id-10'/>
+ <parameter type-id='type-id-22'/>
+ <parameter type-id='type-id-99'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='memmove' filepath='/usr/include/string.h' line='47' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-84'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-20'/>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-10'/>
+ <return type-id='type-id-96'/>
+ </function-decl>
+ <function-decl name='gzwrite' mangled-name='gzwrite' filepath='src.d/gzwrite.c' line='255' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzwrite'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='256' column='1'/>
+ <parameter type-id='type-id-100' name='buf' filepath='src.d/gzwrite.c' line='257' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzfwrite' mangled-name='gzfwrite' filepath='src.d/gzwrite.c' line='283' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzfwrite@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-100' name='buf' filepath='src.d/gzwrite.c' line='284' column='1'/>
+ <parameter type-id='type-id-14' name='size' filepath='src.d/gzwrite.c' line='285' column='1'/>
+ <parameter type-id='type-id-14' name='nitems' filepath='src.d/gzwrite.c' line='286' column='1'/>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-14'/>
+ </function-decl>
+ <function-decl name='gzputc' mangled-name='gzputc' filepath='src.d/gzwrite.c' line='313' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzputc'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='314' column='1'/>
+ <parameter type-id='type-id-20' name='c' filepath='src.d/gzwrite.c' line='315' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzputs' mangled-name='gzputs' filepath='src.d/gzwrite.c' line='361' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzputs'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='362' column='1'/>
+ <parameter type-id='type-id-22' name='s' filepath='src.d/gzwrite.c' line='363' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzvprintf' mangled-name='gzvprintf' filepath='src.d/gzwrite.c' line='391' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzvprintf@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <parameter type-id='type-id-99' name='va' filepath='src.d/gzwrite.c' line='391' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzprintf' mangled-name='gzprintf' filepath='src.d/gzwrite.c' line='463' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzprintf'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter type-id='type-id-22' name='format' filepath='src.d/gzwrite.c' line='463' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzflush' mangled-name='gzflush' filepath='src.d/gzwrite.c' line='565' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzflush'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='566' column='1'/>
+ <parameter type-id='type-id-20' name='flush' filepath='src.d/gzwrite.c' line='567' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='gzsetparams' mangled-name='gzsetparams' filepath='src.d/gzwrite.c' line='597' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='gzsetparams'>
+ <parameter type-id='type-id-89' name='file' filepath='src.d/gzwrite.c' line='598' column='1'/>
+ <parameter type-id='type-id-20' name='level' filepath='src.d/gzwrite.c' line='599' column='1'/>
+ <parameter type-id='type-id-20' name='strategy' filepath='src.d/gzwrite.c' line='600' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <enum-decl name='codetype' naming-typedef-id='type-id-101' filepath='src.d/inftrees.h' line='54' column='1' id='type-id-102'>
+ <underlying-type type-id='type-id-103'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-104' visibility='default' filepath='src.d/inftrees.h' line='24' column='1' id='type-id-105'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='src.d/inftrees.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-69' visibility='default' filepath='src.d/inftrees.h' line='27' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-105' filepath='src.d/inftrees.h' line='28' column='1' id='type-id-104'/>
+ <typedef-decl name='codetype' type-id='type-id-102' filepath='src.d/inftrees.h' line='58' column='1' id='type-id-101'/>
+ <typedef-decl name='in_func' type-id='type-id-106' filepath='src.d/zlib.h' line='1094' column='1' id='type-id-107'/>
+ <typedef-decl name='out_func' type-id='type-id-108' filepath='src.d/zlib.h' line='1096' column='1' id='type-id-109'/>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-103'/>
+ <pointer-type-def type-id='type-id-104' size-in-bits='64' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-110' size-in-bits='64' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-112' size-in-bits='64' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-87'/>
+ <pointer-type-def type-id='type-id-87' size-in-bits='64' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-114' size-in-bits='64' id='type-id-106'/>
+ <pointer-type-def type-id='type-id-69' size-in-bits='64' id='type-id-115'/>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-116'/>
+ <function-decl name='inflateBackInit_' mangled-name='inflateBackInit_' filepath='src.d/infback.c' line='28' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBackInit_@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='29' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/infback.c' line='30' column='1'/>
+ <parameter type-id='type-id-87' name='window' filepath='src.d/infback.c' line='31' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/infback.c' line='32' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/infback.c' line='33' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBack' mangled-name='inflateBack' filepath='src.d/infback.c' line='251' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBack@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='252' column='1'/>
+ <parameter type-id='type-id-107' name='in' filepath='src.d/infback.c' line='253' column='1'/>
+ <parameter type-id='type-id-84' name='in_desc' filepath='src.d/infback.c' line='254' column='1'/>
+ <parameter type-id='type-id-109' name='out' filepath='src.d/infback.c' line='255' column='1'/>
+ <parameter type-id='type-id-84' name='out_desc' filepath='src.d/infback.c' line='256' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateBackEnd' mangled-name='inflateBackEnd' filepath='src.d/infback.c' line='635' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateBackEnd@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/infback.c' line='636' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflate_fast' filepath='src.d/inffast.h' line='11' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-21'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-85'/>
+ </function-decl>
+ <function-decl name='inflate_table' filepath='src.d/inftrees.h' line='60' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-101'/>
+ <parameter type-id='type-id-115'/>
+ <parameter type-id='type-id-11'/>
+ <parameter type-id='type-id-111'/>
+ <parameter type-id='type-id-79'/>
+ <parameter type-id='type-id-115'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-112'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-87'/>
+ <parameter type-id='type-id-11'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-114'>
+ <parameter type-id='type-id-84'/>
+ <parameter type-id='type-id-113'/>
+ <return type-id='type-id-11'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='voidpf' type-id='type-id-84' filepath='./zconf.h' line='415' column='1' id='type-id-117'/>
+ <function-decl name='inflateResetKeep' mangled-name='inflateResetKeep' filepath='src.d/inflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateResetKeep@@ZLIB_1.2.5.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='120' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateReset2' mangled-name='inflateReset2' filepath='src.d/inflate.c' line='158' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateReset2@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='159' column='1'/>
+ <parameter type-id='type-id-20' name='windowBits' filepath='src.d/inflate.c' line='160' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateInit_' mangled-name='inflateInit_' filepath='src.d/inflate.c' line='242' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateInit_'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='243' column='1'/>
+ <parameter type-id='type-id-22' name='version' filepath='src.d/inflate.c' line='244' column='1'/>
+ <parameter type-id='type-id-20' name='stream_size' filepath='src.d/inflate.c' line='245' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflatePrime' mangled-name='inflatePrime' filepath='src.d/inflate.c' line='250' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflatePrime@@ZLIB_1.2.2.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='251' column='1'/>
+ <parameter type-id='type-id-20' name='bits' filepath='src.d/inflate.c' line='252' column='1'/>
+ <parameter type-id='type-id-20' name='value' filepath='src.d/inflate.c' line='253' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetDictionary' mangled-name='inflateGetDictionary' filepath='src.d/inflate.c' line='1318' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateGetDictionary@@ZLIB_1.2.7.1'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1319' column='1'/>
+ <parameter type-id='type-id-19' name='dictionary' filepath='src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-78' name='dictLength' filepath='src.d/inflate.c' line='1321' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSetDictionary' mangled-name='inflateSetDictionary' filepath='src.d/inflate.c' line='1341' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSetDictionary'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1342' column='1'/>
+ <parameter type-id='type-id-16' name='dictionary' filepath='src.d/inflate.c' line='1343' column='1'/>
+ <parameter type-id='type-id-12' name='dictLength' filepath='src.d/inflate.c' line='1344' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateGetHeader' mangled-name='inflateGetHeader' filepath='src.d/inflate.c' line='1376' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateGetHeader@@ZLIB_1.2.2'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1377' column='1'/>
+ <parameter type-id='type-id-42' name='head' filepath='src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSync' mangled-name='inflateSync' filepath='src.d/inflate.c' line='1427' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSync'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1428' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateSyncPoint' mangled-name='inflateSyncPoint' filepath='src.d/inflate.c' line='1485' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateSyncPoint'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1486' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateCopy' mangled-name='inflateCopy' filepath='src.d/inflate.c' line='1495' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateCopy@@ZLIB_1.2.0'>
+ <parameter type-id='type-id-21' name='dest' filepath='src.d/inflate.c' line='1496' column='1'/>
+ <parameter type-id='type-id-21' name='source' filepath='src.d/inflate.c' line='1497' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateUndermine' mangled-name='inflateUndermine' filepath='src.d/inflate.c' line='1542' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateUndermine@@ZLIB_1.2.3.3'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1543' column='1'/>
+ <parameter type-id='type-id-20' name='subvert' filepath='src.d/inflate.c' line='1544' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateValidate' mangled-name='inflateValidate' filepath='src.d/inflate.c' line='1560' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateValidate@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1561' column='1'/>
+ <parameter type-id='type-id-20' name='check' filepath='src.d/inflate.c' line='1562' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='inflateMark' mangled-name='inflateMark' filepath='src.d/inflate.c' line='1575' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateMark@@ZLIB_1.2.3.4'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1576' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='inflateCodesUsed' mangled-name='inflateCodesUsed' filepath='src.d/inflate.c' line='1588' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='inflateCodesUsed@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-21' name='strm' filepath='src.d/inflate.c' line='1589' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='2048' id='type-id-119'>
+ <subrange length='256' lower-bound='0' upper-bound='255' type-id='type-id-9' id='type-id-120'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='4096' id='type-id-121'>
+ <subrange length='512' lower-bound='0' upper-bound='511' type-id='type-id-9' id='type-id-122'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-118' size-in-bits='unknown' id='type-id-123'>
+ <subrange length='unknown' lower-bound='0' upper-bound='0' id='type-id-124'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-67' const='yes' id='type-id-118'/>
+ <var-decl name='_length_code' type-id='type-id-119' visibility='default' filepath='src.d/deflate.h' line='317' column='1'/>
+ <var-decl name='_dist_code' type-id='type-id-121' visibility='default' filepath='src.d/deflate.h' line='318' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-125'/>
+ <function-decl name='uncompress2' mangled-name='uncompress2' filepath='src.d/uncompr.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='uncompress2@@ZLIB_1.2.9'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='28' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='29' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='30' column='1'/>
+ <parameter type-id='type-id-125' name='sourceLen' filepath='src.d/uncompr.c' line='31' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='uncompress' mangled-name='uncompress' filepath='src.d/uncompr.c' line='86' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='uncompress'>
+ <parameter type-id='type-id-19' name='dest' filepath='src.d/uncompr.c' line='87' column='1'/>
+ <parameter type-id='type-id-18' name='destLen' filepath='src.d/uncompr.c' line='88' column='1'/>
+ <parameter type-id='type-id-16' name='source' filepath='src.d/uncompr.c' line='89' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='src.d/uncompr.c' line='90' column='1'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-126' size-in-bits='640' id='type-id-127'>
+ <subrange length='10' lower-bound='0' upper-bound='9' type-id='type-id-9' id='type-id-128'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-53' const='yes' id='type-id-126'/>
+ <function-decl name='zlibVersion' mangled-name='zlibVersion' filepath='src.d/zutil.c' line='27' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibVersion'>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <function-decl name='zlibCompileFlags' mangled-name='zlibCompileFlags' filepath='src.d/zutil.c' line='32' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibCompileFlags@@ZLIB_1.2.0.2'>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zError' mangled-name='zError' filepath='src.d/zutil.c' line='135' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zError'>
+ <parameter type-id='type-id-20' name='err' filepath='src.d/zutil.c' line='136' column='1'/>
+ <return type-id='type-id-22'/>
+ </function-decl>
+ <var-decl name='z_errmsg' type-id='type-id-127' visibility='default' filepath='src.d/zutil.h' line='56' column='1'/>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-aarch64-unknown-linux-gnu.abi b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-aarch64-unknown-linux-gnu.abi
new file mode 100644
index 0000000000..cfc0eddc62
--- /dev/null
+++ b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-aarch64-unknown-linux-gnu.abi
@@ -0,0 +1,1904 @@
+<abi-corpus version='2.0' path='btmp1/libz-ng.so.2.1.0.devel' architecture='elf-arm-aarch64' soname='libz-ng.so.2'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld-linux-aarch64.so.1'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='zlibng_version' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compressBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_gen' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_op' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePending' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateTune' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_get_crc_table' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzbuffer' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclearerr' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_r' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_w' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdirect' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzeof' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzerror' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzflush' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgets' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzoffset' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputs' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzrewind' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzseek' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzsetparams' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gztell' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzungetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzvprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBack' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCodesUsed' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateMark' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSync' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSyncPoint' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateUndermine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateValidate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zError' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zlibCompileFlags' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <elf-variable-symbols>
+ <elf-symbol name='zng_vstring' size='38' version='ZLIB_NG_2.0.0' is-default-version='yes' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-variable-symbols>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-4'/>
+ <typedef-decl name='uint32_t' type-id='type-id-5' filepath='/usr/aarch64-linux-gnu/include/bits/stdint-uintn.h' line='26' column='1' id='type-id-6'/>
+ <typedef-decl name='__uint32_t' type-id='type-id-3' filepath='/usr/aarch64-linux-gnu/include/bits/types.h' line='42' column='1' id='type-id-5'/>
+ <typedef-decl name='__off64_t' type-id='type-id-1' filepath='/usr/aarch64-linux-gnu/include/bits/types.h' line='153' column='1' id='type-id-7'/>
+ <typedef-decl name='off64_t' type-id='type-id-7' filepath='/usr/aarch64-linux-gnu/include/sys/types.h' line='92' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-4' filepath='/usr/lib/gcc-cross/aarch64-linux-gnu/11/include/stddef.h' line='209' column='1' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-10'/>
+ <pointer-type-def type-id='type-id-10' size-in-bits='64' id='type-id-11'/>
+ <function-decl name='zng_adler32_z' mangled-name='zng_adler32_z' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32_z@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_adler32' mangled-name='zng_adler32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_adler32_combine' mangled-name='zng_adler32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-6' name='adler2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='void' id='type-id-12'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-13'/>
+ <class-decl name='internal_state' size-in-bits='48512' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='113' column='1' id='type-id-14'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_buf' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_out' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='pending_buf_size' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='pending' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='wrap' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='gzindex' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='gzhead' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='status' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='last_flush' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='reproducible' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='block_open' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='w_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='w_bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='w_mask' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='lookahead' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='high_water' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='window_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='window' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='150' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='prev' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='head' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='ins_h' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='168' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='block_start' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='170' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='match_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='175' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='prev_match' type-id='type-id-20' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='176' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='match_available' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='strstart' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='match_start' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='prev_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='max_chain_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='max_lazy_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='update_hash' type-id='type-id-21' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='201' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='insert_string' type-id='type-id-22' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='quick_insert_string' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='level' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='207' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='strategy' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='208' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='good_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='nice_match' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='213' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='crc_fold' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='215' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='2080'>
+ <var-decl name='dyn_ltree' type-id='type-id-25' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='219' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20416'>
+ <var-decl name='dyn_dtree' type-id='type-id-26' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22368'>
+ <var-decl name='bl_tree' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='221' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23616'>
+ <var-decl name='l_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='223' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23808'>
+ <var-decl name='d_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='224' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24000'>
+ <var-decl name='bl_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='225' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24192'>
+ <var-decl name='bl_count' type-id='type-id-29' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='227' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24448'>
+ <var-decl name='heap' type-id='type-id-30' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='230' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42784'>
+ <var-decl name='heap_len' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='231' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42816'>
+ <var-decl name='heap_max' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='232' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42848'>
+ <var-decl name='depth' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='237' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47456'>
+ <var-decl name='lit_bufsize' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='241' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47488'>
+ <var-decl name='sym_buf' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='261' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47552'>
+ <var-decl name='sym_next' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='262' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47584'>
+ <var-decl name='sym_end' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='263' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47616'>
+ <var-decl name='opt_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='265' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47680'>
+ <var-decl name='static_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='266' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47744'>
+ <var-decl name='matches' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='267' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47776'>
+ <var-decl name='insert' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='268' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47808'>
+ <var-decl name='compressed_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='271' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47872'>
+ <var-decl name='bits_sent' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='272' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47936'>
+ <var-decl name='reserved_p' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='275' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48000'>
+ <var-decl name='bi_buf' type-id='type-id-33' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='277' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48064'>
+ <var-decl name='bi_valid' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='280' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48096'>
+ <var-decl name='reserved' type-id='type-id-35' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='284' column='1'/>
+ </data-member>
+ </class-decl>
+ <type-decl name='int' size-in-bits='32' id='type-id-17'/>
+ <typedef-decl name='alloc_func' type-id='type-id-36' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='93' column='1' id='type-id-37'/>
+ <typedef-decl name='free_func' type-id='type-id-38' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='94' column='1' id='type-id-39'/>
+ <class-decl name='zng_stream_s' size-in-bits='832' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='98' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-41' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='avail_in' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='total_in' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='next_out' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='avail_out' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total_out' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='msg' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='state' type-id='type-id-44' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='zalloc' type-id='type-id-37' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='zfree' type-id='type-id-39' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='opaque' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='data_type' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='adler' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reserved' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='117' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_stream' type-id='type-id-40' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='118' column='1' id='type-id-46'/>
+ <typedef-decl name='int32_t' type-id='type-id-47' filepath='/usr/aarch64-linux-gnu/include/bits/stdint-intn.h' line='26' column='1' id='type-id-34'/>
+ <typedef-decl name='uint8_t' type-id='type-id-48' filepath='/usr/aarch64-linux-gnu/include/bits/stdint-uintn.h' line='24' column='1' id='type-id-49'/>
+ <typedef-decl name='__uint8_t' type-id='type-id-2' filepath='/usr/aarch64-linux-gnu/include/bits/types.h' line='38' column='1' id='type-id-48'/>
+ <typedef-decl name='__int32_t' type-id='type-id-17' filepath='/usr/aarch64-linux-gnu/include/bits/types.h' line='41' column='1' id='type-id-47'/>
+ <qualified-type-def type-id='type-id-13' const='yes' id='type-id-50'/>
+ <pointer-type-def type-id='type-id-50' size-in-bits='64' id='type-id-43'/>
+ <qualified-type-def type-id='type-id-49' const='yes' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-51' size-in-bits='64' id='type-id-41'/>
+ <pointer-type-def type-id='type-id-14' size-in-bits='64' id='type-id-44'/>
+ <pointer-type-def type-id='type-id-9' size-in-bits='64' id='type-id-52'/>
+ <pointer-type-def type-id='type-id-49' size-in-bits='64' id='type-id-42'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-16'/>
+ <pointer-type-def type-id='type-id-53' size-in-bits='64' id='type-id-38'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-45'/>
+ <pointer-type-def type-id='type-id-54' size-in-bits='64' id='type-id-36'/>
+ <pointer-type-def type-id='type-id-46' size-in-bits='64' id='type-id-15'/>
+ <function-decl name='zng_compress2' mangled-name='zng_compress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-9' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <parameter type-id='type-id-17' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_compress' mangled-name='zng_compress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-9' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_compressBound' mangled-name='zng_compressBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compressBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-9' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit' mangled-name='zng_deflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='227' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflate' mangled-name='zng_deflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='248' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateEnd' mangled-name='zng_deflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='362' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-53'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-54'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='arm_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/arm/arm_features.h' line='11' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <qualified-type-def type-id='type-id-6' const='yes' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-55' size-in-bits='64' id='type-id-56'/>
+ <function-decl name='zng_get_crc_table' mangled-name='zng_get_crc_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='18' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_get_crc_table@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-56'/>
+ </function-decl>
+ <function-decl name='zng_crc32_z' mangled-name='zng_crc32_z' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_z@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32' mangled-name='zng_crc32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_crc32_combine' mangled-name='zng_crc32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_gen' mangled-name='zng_crc32_combine_gen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine_gen@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_op' mangled-name='zng_crc32_combine_op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine_op@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-55' name='op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-57'/>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='1248' id='type-id-27'>
+ <subrange length='39' type-id='type-id-4' id='type-id-59'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='18336' id='type-id-25'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='1952' id='type-id-26'>
+ <subrange length='61' type-id='type-id-4' id='type-id-61'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-34' size-in-bits='352' id='type-id-35'>
+ <subrange length='11' type-id='type-id-4' id='type-id-62'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-17' size-in-bits='18336' id='type-id-30'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='256' id='type-id-29'>
+ <subrange length='16' type-id='type-id-4' id='type-id-64'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-49' size-in-bits='512' id='type-id-65'>
+ <subrange length='64' type-id='type-id-4' id='type-id-66'/>
+ </array-type-def>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-67'/>
+ <array-type-def dimensions='1' type-id='type-id-2' size-in-bits='4584' id='type-id-31'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-68'/>
+ <class-decl name='crc32_fold_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='11' column='1' id='type-id-24'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fold' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='12' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='value' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='13' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='77' column='1' id='type-id-58'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-69' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='81' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-70' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='85' column='1'/>
+ </data-member>
+ </class-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='78' column='1' id='type-id-69'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='79' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='80' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='82' column='1' id='type-id-70'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='83' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='84' column='1'/>
+ </data-member>
+ </union-decl>
+ <typedef-decl name='ct_data' type-id='type-id-58' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='86' column='1' id='type-id-71'/>
+ <typedef-decl name='static_tree_desc' type-id='type-id-57' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='93' column='1' id='type-id-72'/>
+ <class-decl name='tree_desc_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='95' column='1' id='type-id-28'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-73' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='max_code' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='stat_desc' type-id='type-id-74' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='98' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='Pos' type-id='type-id-63' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='101' column='1' id='type-id-20'/>
+ <typedef-decl name='deflate_state' type-id='type-id-14' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='107' column='1' id='type-id-75'/>
+ <typedef-decl name='update_hash_cb' type-id='type-id-76' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='109' column='1' id='type-id-21'/>
+ <typedef-decl name='insert_string_cb' type-id='type-id-77' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='110' column='1' id='type-id-22'/>
+ <typedef-decl name='quick_insert_string_cb' type-id='type-id-78' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='111' column='1' id='type-id-23'/>
+ <enum-decl name='block_state' naming-typedef-id='type-id-79' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='287' column='1' id='type-id-80'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='need_more' value='0'/>
+ <enumerator name='block_done' value='1'/>
+ <enumerator name='finish_started' value='2'/>
+ <enumerator name='finish_done' value='3'/>
+ </enum-decl>
+ <typedef-decl name='block_state' type-id='type-id-80' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='292' column='1' id='type-id-79'/>
+ <typedef-decl name='zng_calloc_func' type-id='type-id-54' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='132' column='1' id='type-id-81'/>
+ <typedef-decl name='zng_cfree_func' type-id='type-id-53' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='133' column='1' id='type-id-82'/>
+ <class-decl name='zng_gz_header_s' size-in-bits='640' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='126' column='1' id='type-id-83'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='time' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='xflags' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='os' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='extra_len' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='extra_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='name' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='name_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='comment' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='comm_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='137' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='hcrc' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='done' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='139' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_gz_header' type-id='type-id-83' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='140' column='1' id='type-id-84'/>
+ <typedef-decl name='zng_gz_headerp' type-id='type-id-85' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='142' column='1' id='type-id-18'/>
+ <enum-decl name='zng_deflate_param' naming-typedef-id='type-id-86' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1800' column='1' id='type-id-87'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='Z_DEFLATE_LEVEL' value='0'/>
+ <enumerator name='Z_DEFLATE_STRATEGY' value='1'/>
+ <enumerator name='Z_DEFLATE_REPRODUCIBLE' value='2'/>
+ </enum-decl>
+ <typedef-decl name='zng_deflate_param' type-id='type-id-87' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1810' column='1' id='type-id-86'/>
+ <class-decl name='zng_deflate_param_value' size-in-bits='256' is-struct='yes' naming-typedef-id='type-id-88' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1812' column='1' id='type-id-89'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='param' type-id='type-id-86' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1813' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='buf' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1814' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='size' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1815' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='status' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1816' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_deflate_param_value' type-id='type-id-89' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1817' column='1' id='type-id-88'/>
+ <typedef-decl name='uint16_t' type-id='type-id-90' filepath='/usr/aarch64-linux-gnu/include/bits/stdint-uintn.h' line='25' column='1' id='type-id-63'/>
+ <typedef-decl name='uint64_t' type-id='type-id-91' filepath='/usr/aarch64-linux-gnu/include/bits/stdint-uintn.h' line='27' column='1' id='type-id-33'/>
+ <typedef-decl name='__uint16_t' type-id='type-id-68' filepath='/usr/aarch64-linux-gnu/include/bits/types.h' line='40' column='1' id='type-id-90'/>
+ <typedef-decl name='__uint64_t' type-id='type-id-4' filepath='/usr/aarch64-linux-gnu/include/bits/types.h' line='45' column='1' id='type-id-91'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-32'/>
+ <qualified-type-def type-id='type-id-72' const='yes' id='type-id-92'/>
+ <pointer-type-def type-id='type-id-92' size-in-bits='64' id='type-id-74'/>
+ <pointer-type-def type-id='type-id-71' size-in-bits='64' id='type-id-73'/>
+ <pointer-type-def type-id='type-id-75' size-in-bits='64' id='type-id-93'/>
+ <qualified-type-def type-id='type-id-93' const='yes' id='type-id-94'/>
+ <pointer-type-def type-id='type-id-34' size-in-bits='64' id='type-id-95'/>
+ <pointer-type-def type-id='type-id-96' size-in-bits='64' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-97' size-in-bits='64' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-6' size-in-bits='64' id='type-id-98'/>
+ <pointer-type-def type-id='type-id-99' size-in-bits='64' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-81' size-in-bits='64' id='type-id-100'/>
+ <pointer-type-def type-id='type-id-82' size-in-bits='64' id='type-id-101'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='64' id='type-id-102'/>
+ <pointer-type-def type-id='type-id-84' size-in-bits='64' id='type-id-85'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-57'/>
+ <function-decl name='cpu_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='23' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='deflate_stored' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='111' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_fast' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='112' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_quick' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='113' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_medium' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='115' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_slow' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='117' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_rle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='118' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_huff' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='update_hash_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='124' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='125' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='126' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2' mangled-name='zng_deflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit_' mangled-name='zng_deflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2_' mangled-name='zng_deflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetDictionary' mangled-name='zng_deflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetDictionary' mangled-name='zng_deflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-42' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-98' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateResetKeep' mangled-name='zng_deflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateReset' mangled-name='zng_deflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetHeader' mangled-name='zng_deflateSetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <parameter type-id='type-id-18' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePending' mangled-name='zng_deflatePending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflatePending@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-98' name='pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-95' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePrime' mangled-name='zng_deflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateParams' mangled-name='zng_deflateParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateTune' mangled-name='zng_deflateTune' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateTune@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='good_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_lazy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='nice_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_chain' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateBound' mangled-name='zng_deflateBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <parameter type-id='type-id-4' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_deflateCopy' mangled-name='zng_deflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <parameter type-id='type-id-15' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetParams' mangled-name='zng_deflateSetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-102' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-9' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetParams' mangled-name='zng_deflateGetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateGetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-102' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-9' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_tr_init' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='380' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='382' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_tr_align' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='383' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_tr_stored_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='384' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_zcalloc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='129' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='zng_zcfree' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='130' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_alloc_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='135' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-100'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='zng_free_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='136' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-101'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-96'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-97'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-99'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_fast.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_fill_window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='376' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='381' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_flush_pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='50' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_stored.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_read_buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='51' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-3'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='crc32_fold' type-id='type-id-24' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='14' column='1' id='type-id-103'/>
+ <class-decl name='functable_s' size-in-bits='1088' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='19' column='1' id='type-id-104'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='adler32' type-id='type-id-105' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='adler32_fold_copy' type-id='type-id-106' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='crc32' type-id='type-id-105' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='crc32_fold_reset' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='crc32_fold_copy' type-id='type-id-108' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='crc32_fold' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='crc32_fold_final' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='compare256' type-id='type-id-110' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='chunksize' type-id='type-id-111' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='chunkmemset_safe' type-id='type-id-112' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='inflate_fast' type-id='type-id-113' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='insert_string' type-id='type-id-77' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='longest_match' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='32' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='longest_match_slow' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='quick_insert_string' type-id='type-id-78' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='slide_hash' type-id='type-id-115' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='update_hash' type-id='type-id-76' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='36' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-103' size-in-bits='64' id='type-id-116'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-117'/>
+ <pointer-type-def type-id='type-id-118' size-in-bits='64' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-119' size-in-bits='64' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-120' size-in-bits='64' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-121' size-in-bits='64' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-122' size-in-bits='64' id='type-id-105'/>
+ <pointer-type-def type-id='type-id-123' size-in-bits='64' id='type-id-106'/>
+ <pointer-type-def type-id='type-id-124' size-in-bits='64' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-125' size-in-bits='64' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-126' size-in-bits='64' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-127' size-in-bits='64' id='type-id-115'/>
+ <pointer-type-def type-id='type-id-128' size-in-bits='64' id='type-id-113'/>
+ <function-decl name='adler32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.h' line='9' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='28' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='30' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunksize_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='75' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='76' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='chunksize_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='89' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='90' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='inflate_fast_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='104' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='inflate_fast_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='115' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_crc32_braid' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='124' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='126' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_unaligned_64' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='143' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='161' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='insert_string_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='165' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='longest_match_unaligned_64' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='176' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='186' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_unaligned_64' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='198' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='208' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='215' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='219' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='slide_hash_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='228' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='update_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='241' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='update_hash_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='245' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_reset_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='16' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='17' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='crc32_fold_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='18' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='crc32_fold_final_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='19' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='slide_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='377' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <var-decl name='functable' type-id='type-id-104' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='39' column='1'/>
+ <function-type size-in-bits='64' id='type-id-118'>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-119'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-120'>
+ <parameter type-id='type-id-117'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-121'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-122'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-123'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-124'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-125'>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-126'>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-127'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-128'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='variadic parameter type' id='type-id-129'/>
+ <typedef-decl name='gzFile' type-id='type-id-130' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1285' column='1' id='type-id-131'/>
+ <class-decl name='gzFile_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1790' column='1' id='type-id-132'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1791' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='next' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1792' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pos' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1793' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-132' size-in-bits='64' id='type-id-130'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-133'/>
+ <function-decl name='zng_gzopen' mangled-name='zng_gzopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-43' name='path' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <parameter type-id='type-id-43' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <return type-id='type-id-131'/>
+ </function-decl>
+ <function-decl name='zng_gzdopen' mangled-name='zng_gzdopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzdopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-17' name='fd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <parameter type-id='type-id-43' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <return type-id='type-id-131'/>
+ </function-decl>
+ <function-decl name='zng_gzclose' mangled-name='zng_gzclose' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzbuffer' mangled-name='zng_gzbuffer' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzbuffer@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <parameter type-id='type-id-3' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzrewind' mangled-name='zng_gzrewind' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzrewind@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzseek' mangled-name='zng_gzseek' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzseek@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-17' name='whence' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_gztell' mangled-name='zng_gztell' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gztell@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_gzoffset' mangled-name='zng_gzoffset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzoffset@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_gzeof' mangled-name='zng_gzeof' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzeof@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzerror' mangled-name='zng_gzerror' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzerror@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <parameter type-id='type-id-133' name='errnum' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='zng_gzclearerr' mangled-name='zng_gzclearerr' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclearerr@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_r' mangled-name='zng_gzclose_r' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1641' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose_r@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_w' mangled-name='zng_gzclose_w' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1643' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose_w@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='__open_2' filepath='/usr/aarch64-linux-gnu/include/bits/fcntl2.h' line='26' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='__open_too_many_args' filepath='/usr/aarch64-linux-gnu/include/bits/fcntl2.h' line='35' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='__open_missing_mode' filepath='/usr/aarch64-linux-gnu/include/bits/fcntl2.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/aarch64-linux-gnu/include/stdlib.h' line='540' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/aarch64-linux-gnu/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-43'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/aarch64-linux-gnu/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-7'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='__va_list' size-in-bits='256' is-struct='yes' visibility='default' id='type-id-134'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='__stack' type-id='type-id-45' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='__gr_top' type-id='type-id-45' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='__vr_top' type-id='type-id-45' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='__gr_offs' type-id='type-id-17' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='__vr_offs' type-id='type-id-17' visibility='default'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-134' filepath='/usr/lib/gcc-cross/aarch64-linux-gnu/11/include/stdarg.h' line='40' column='1' id='type-id-135'/>
+ <typedef-decl name='va_list' type-id='type-id-135' filepath='/usr/lib/gcc-cross/aarch64-linux-gnu/11/include/stdarg.h' line='99' column='1' id='type-id-136'/>
+ <function-decl name='zng_gzwrite' mangled-name='zng_gzwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzfwrite' mangled-name='zng_gzfwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzfwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-9' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-9' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzputc' mangled-name='zng_gzputc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzputc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <parameter type-id='type-id-17' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzputs' mangled-name='zng_gzputs' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzputs@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <parameter type-id='type-id-43' name='s' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzvprintf' mangled-name='zng_gzvprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzvprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-43' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-136' name='va' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzprintf' mangled-name='zng_gzprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter type-id='type-id-43' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzflush' mangled-name='zng_gzflush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzflush@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <parameter type-id='type-id-17' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzsetparams' mangled-name='zng_gzsetparams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzsetparams@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-17' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-17' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/aarch64-linux-gnu/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-137'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-138' size-in-bits='61568' id='type-id-139'>
+ <subrange length='1924' type-id='type-id-4' id='type-id-140'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='4608' id='type-id-141'>
+ <subrange length='288' type-id='type-id-4' id='type-id-142'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='5120' id='type-id-143'>
+ <subrange length='320' type-id='type-id-4' id='type-id-144'/>
+ </array-type-def>
+ <enum-decl name='inflate_mode' naming-typedef-id='type-id-145' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='25' column='1' id='type-id-146'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='HEAD' value='16180'/>
+ <enumerator name='FLAGS' value='16181'/>
+ <enumerator name='TIME' value='16182'/>
+ <enumerator name='OS' value='16183'/>
+ <enumerator name='EXLEN' value='16184'/>
+ <enumerator name='EXTRA' value='16185'/>
+ <enumerator name='NAME' value='16186'/>
+ <enumerator name='COMMENT' value='16187'/>
+ <enumerator name='HCRC' value='16188'/>
+ <enumerator name='DICTID' value='16189'/>
+ <enumerator name='DICT' value='16190'/>
+ <enumerator name='TYPE' value='16191'/>
+ <enumerator name='TYPEDO' value='16192'/>
+ <enumerator name='STORED' value='16193'/>
+ <enumerator name='COPY_' value='16194'/>
+ <enumerator name='COPY' value='16195'/>
+ <enumerator name='TABLE' value='16196'/>
+ <enumerator name='LENLENS' value='16197'/>
+ <enumerator name='CODELENS' value='16198'/>
+ <enumerator name='LEN_' value='16199'/>
+ <enumerator name='LEN' value='16200'/>
+ <enumerator name='LENEXT' value='16201'/>
+ <enumerator name='DIST' value='16202'/>
+ <enumerator name='DISTEXT' value='16203'/>
+ <enumerator name='MATCH' value='16204'/>
+ <enumerator name='LIT' value='16205'/>
+ <enumerator name='CHECK' value='16206'/>
+ <enumerator name='LENGTH' value='16207'/>
+ <enumerator name='DONE' value='16208'/>
+ <enumerator name='BAD' value='16209'/>
+ <enumerator name='MEM' value='16210'/>
+ <enumerator name='SYNC' value='16211'/>
+ </enum-decl>
+ <typedef-decl name='inflate_mode' type-id='type-id-146' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='58' column='1' id='type-id-145'/>
+ <class-decl name='inflate_state' size-in-bits='73216' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='87' column='1' id='type-id-147'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='mode' type-id='type-id-145' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='last' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='90' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='wrap' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='havedict' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='flags' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='94' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='dmax' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='check' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='head' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='wbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='wsize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='whave' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='wnext' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='window' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='crc_fold' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='hold' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1248'>
+ <var-decl name='length' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='offset' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='extra' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='lencode' type-id='type-id-148' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='distcode' type-id='type-id-148' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='lenbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='distbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='ncode' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1568'>
+ <var-decl name='nlen' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1600'>
+ <var-decl name='ndist' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1632'>
+ <var-decl name='have' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1664'>
+ <var-decl name='next' type-id='type-id-149' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1728'>
+ <var-decl name='lens' type-id='type-id-143' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='6848'>
+ <var-decl name='work' type-id='type-id-141' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='11456'>
+ <var-decl name='codes' type-id='type-id-139' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73024'>
+ <var-decl name='sane' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73056'>
+ <var-decl name='back' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73088'>
+ <var-decl name='was' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73120'>
+ <var-decl name='chunksize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='134' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-138' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='27' column='1' id='type-id-150'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='30' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-150' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='31' column='1' id='type-id-138'/>
+ <enum-decl name='codetype' naming-typedef-id='type-id-151' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='57' column='1' id='type-id-152'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <typedef-decl name='codetype' type-id='type-id-152' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='61' column='1' id='type-id-151'/>
+ <typedef-decl name='in_func' type-id='type-id-153' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1075' column='1' id='type-id-154'/>
+ <typedef-decl name='out_func' type-id='type-id-155' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1076' column='1' id='type-id-156'/>
+ <pointer-type-def type-id='type-id-138' size-in-bits='64' id='type-id-149'/>
+ <pointer-type-def type-id='type-id-149' size-in-bits='64' id='type-id-157'/>
+ <qualified-type-def type-id='type-id-138' const='yes' id='type-id-158'/>
+ <pointer-type-def type-id='type-id-158' size-in-bits='64' id='type-id-148'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='64' id='type-id-159'/>
+ <pointer-type-def type-id='type-id-147' size-in-bits='64' id='type-id-160'/>
+ <pointer-type-def type-id='type-id-161' size-in-bits='64' id='type-id-155'/>
+ <pointer-type-def type-id='type-id-162' size-in-bits='64' id='type-id-153'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-163'/>
+ <pointer-type-def type-id='type-id-3' size-in-bits='64' id='type-id-164'/>
+ <function-decl name='zng_inflateBackInit' mangled-name='zng_inflateBackInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-42' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackInit_' mangled-name='zng_inflateBackInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-42' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBack' mangled-name='zng_inflateBack' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBack@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-154' name='in' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-45' name='in_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-156' name='out' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-45' name='out_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackEnd' mangled-name='zng_inflateBackEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_fixedtables' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='138' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-160'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_inflate_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='63' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-151'/>
+ <parameter type-id='type-id-163'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-157'/>
+ <parameter type-id='type-id-164'/>
+ <parameter type-id='type-id-163'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-161'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-34'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-162'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-159'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_inflateResetKeep' mangled-name='zng_inflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset' mangled-name='zng_inflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset2' mangled-name='zng_inflateReset2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateReset2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2' mangled-name='zng_inflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit' mangled-name='zng_inflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit_' mangled-name='zng_inflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2_' mangled-name='zng_inflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflatePrime' mangled-name='zng_inflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflate' mangled-name='zng_inflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-34' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateEnd' mangled-name='zng_inflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetDictionary' mangled-name='zng_inflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-42' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-98' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSetDictionary' mangled-name='zng_inflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetHeader' mangled-name='zng_inflateGetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateGetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <parameter type-id='type-id-18' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSync' mangled-name='zng_inflateSync' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSync@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSyncPoint' mangled-name='zng_inflateSyncPoint' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSyncPoint@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateCopy' mangled-name='zng_inflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-15' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateUndermine' mangled-name='zng_inflateUndermine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateUndermine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <parameter type-id='type-id-34' name='subvert' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateValidate' mangled-name='zng_inflateValidate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateValidate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <parameter type-id='type-id-34' name='check' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateMark' mangled-name='zng_inflateMark' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateMark@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='zng_inflateCodesUsed' mangled-name='zng_inflateCodesUsed' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateCodesUsed@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-165' size-in-bits='9216' id='type-id-166'>
+ <subrange length='288' type-id='type-id-4' id='type-id-142'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-165' size-in-bits='960' id='type-id-167'>
+ <subrange length='30' type-id='type-id-4' id='type-id-168'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-169' size-in-bits='928' id='type-id-170'>
+ <subrange length='29' type-id='type-id-4' id='type-id-171'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-169' size-in-bits='960' id='type-id-172'>
+ <subrange length='30' type-id='type-id-4' id='type-id-168'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='2048' id='type-id-173'>
+ <subrange length='256' type-id='type-id-4' id='type-id-174'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='4096' id='type-id-175'>
+ <subrange length='512' type-id='type-id-4' id='type-id-176'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-71' const='yes' id='type-id-165'/>
+ <qualified-type-def type-id='type-id-17' const='yes' id='type-id-169'/>
+ <var-decl name='static_ltree' type-id='type-id-166' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='14' column='1'/>
+ <var-decl name='static_dtree' type-id='type-id-167' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='15' column='1'/>
+ <var-decl name='zng_dist_code' type-id='type-id-175' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='17' column='1'/>
+ <var-decl name='zng_length_code' type-id='type-id-173' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='18' column='1'/>
+ <var-decl name='base_length' type-id='type-id-170' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='20' column='1'/>
+ <var-decl name='base_dist' type-id='type-id-172' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='21' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_uncompress2' mangled-name='zng_uncompress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_uncompress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-52' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_uncompress' mangled-name='zng_uncompress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_uncompress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-9' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-177' size-in-bits='640' id='type-id-178'>
+ <subrange length='10' type-id='type-id-4' id='type-id-179'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='304' id='type-id-180'>
+ <subrange length='38' type-id='type-id-4' id='type-id-181'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-43' const='yes' id='type-id-177'/>
+ <pointer-type-def type-id='type-id-45' size-in-bits='64' id='type-id-182'/>
+ <var-decl name='zng_vstring' type-id='type-id-180' mangled-name='zng_vstring' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='23' column='1' elf-symbol-id='zng_vstring@@ZLIB_NG_2.0.0'/>
+ <function-decl name='zlibng_version' mangled-name='zlibng_version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibng_version@@ZLIB_NG_2.1.0'>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='zng_zlibCompileFlags' mangled-name='zng_zlibCompileFlags' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='36' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_zlibCompileFlags@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_zError' mangled-name='zng_zError' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_zError@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-17' name='err' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <var-decl name='zng_z_errmsg' type-id='type-id-178' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='24' column='1'/>
+ <function-decl name='free' filepath='/usr/aarch64-linux-gnu/include/stdlib.h' line='555' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='posix_memalign' filepath='/usr/aarch64-linux-gnu/include/stdlib.h' line='586' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-182'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/arm/arm_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/arm' language='LANG_C11'>
+ <function-decl name='getauxval' filepath='/usr/aarch64-linux-gnu/include/sys/auxv.h' line='31' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-4'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1856' is-struct='yes' naming-typedef-id='type-id-183' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='102' column='1' id='type-id-184'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-132' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='mode' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='fd' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='path' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='want' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='in' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='out' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='direct' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='how' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='start' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='eof' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='past' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='level' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='strategy' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reset' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='skip' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='seek' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='err' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='msg' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='strm' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='133' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gz_state' type-id='type-id-184' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='134' column='1' id='type-id-183'/>
+ <typedef-decl name='__ssize_t' type-id='type-id-1' filepath='/usr/aarch64-linux-gnu/include/bits/types.h' line='194' column='1' id='type-id-185'/>
+ <typedef-decl name='ssize_t' type-id='type-id-185' filepath='/usr/aarch64-linux-gnu/include/stdio.h' line='77' column='1' id='type-id-137'/>
+ <pointer-type-def type-id='type-id-183' size-in-bits='64' id='type-id-186'/>
+ <function-decl name='zng_gzread' mangled-name='zng_gzread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzfread' mangled-name='zng_gzfread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzfread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-9' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-9' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzgetc' mangled-name='zng_gzgetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzgetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzungetc' mangled-name='zng_gzungetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzungetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-17' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzgets' mangled-name='zng_gzgets' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzgets@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-32' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-17' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='zng_gzdirect' mangled-name='zng_gzdirect' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzdirect@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='138' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-186'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-43'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='__read_chk' filepath='/usr/aarch64-linux-gnu/include/bits/unistd.h' line='23' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-137'/>
+ </function-decl>
+ <function-decl name='__errno_location' filepath='/usr/aarch64-linux-gnu/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/aarch64-linux-gnu/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/aarch64-linux-gnu/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/aarch64-linux-gnu/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-arm-unknown-linux-gnueabi.abi b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-arm-unknown-linux-gnueabi.abi
new file mode 100644
index 0000000000..414f8a96ec
--- /dev/null
+++ b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-arm-unknown-linux-gnueabi.abi
@@ -0,0 +1,1889 @@
+<abi-corpus version='2.0' path='btmp1/libz-ng.so.2.1.0.devel' architecture='elf-arm' soname='libz-ng.so.2'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld-linux.so.3'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='zlibng_version' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compressBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_gen' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_op' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePending' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateTune' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_get_crc_table' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzbuffer' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclearerr' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_r' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_w' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdirect' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzeof' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzerror' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzflush' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgets' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzoffset' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputs' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzrewind' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzseek' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzsetparams' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gztell' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzungetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzvprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBack' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCodesUsed' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateMark' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSync' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSyncPoint' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateUndermine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateValidate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zError' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zlibCompileFlags' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <elf-variable-symbols>
+ <elf-symbol name='zng_vstring' size='38' version='ZLIB_NG_2.0.0' is-default-version='yes' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-variable-symbols>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='void' id='type-id-4'/>
+ <typedef-decl name='uint32_t' type-id='type-id-5' filepath='/usr/arm-linux-gnueabi/include/bits/stdint-uintn.h' line='26' column='1' id='type-id-6'/>
+ <typedef-decl name='__uint32_t' type-id='type-id-3' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='42' column='1' id='type-id-5'/>
+ <typedef-decl name='__int64_t' type-id='type-id-1' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='47' column='1' id='type-id-7'/>
+ <typedef-decl name='__off64_t' type-id='type-id-7' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='153' column='1' id='type-id-8'/>
+ <typedef-decl name='off64_t' type-id='type-id-8' filepath='/usr/arm-linux-gnueabi/include/sys/types.h' line='92' column='1' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-10'/>
+ <pointer-type-def type-id='type-id-10' size-in-bits='32' id='type-id-11'/>
+ <function-decl name='zng_adler32' mangled-name='zng_adler32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_adler32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_adler32_combine' mangled-name='zng_adler32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_adler32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-6' name='adler2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-12'/>
+ <class-decl name='internal_state' size-in-bits='47744' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='113' column='1' id='type-id-13'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='pending_buf' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_out' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='pending_buf_size' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='wrap' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='gzindex' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='gzhead' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='status' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='last_flush' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='reproducible' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='block_open' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='w_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='w_bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='w_mask' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='lookahead' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='high_water' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='window_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='window' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='150' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='prev' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='head' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='ins_h' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='168' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='block_start' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='170' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='match_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='175' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='prev_match' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='176' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='match_available' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='strstart' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='match_start' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='prev_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='max_chain_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='max_lazy_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='update_hash' type-id='type-id-20' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='201' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='insert_string' type-id='type-id-21' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='quick_insert_string' type-id='type-id-22' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='level' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='207' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='strategy' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='208' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='good_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='nice_match' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='213' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='crc_fold' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='215' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1824'>
+ <var-decl name='dyn_ltree' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='219' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20160'>
+ <var-decl name='dyn_dtree' type-id='type-id-25' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22112'>
+ <var-decl name='bl_tree' type-id='type-id-26' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='221' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23360'>
+ <var-decl name='l_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='223' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23456'>
+ <var-decl name='d_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='224' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23552'>
+ <var-decl name='bl_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='225' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23648'>
+ <var-decl name='bl_count' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='227' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23904'>
+ <var-decl name='heap' type-id='type-id-29' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='230' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42240'>
+ <var-decl name='heap_len' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='231' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42272'>
+ <var-decl name='heap_max' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='232' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42304'>
+ <var-decl name='depth' type-id='type-id-30' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='237' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46912'>
+ <var-decl name='lit_bufsize' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='241' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46944'>
+ <var-decl name='sym_buf' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='261' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46976'>
+ <var-decl name='sym_next' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='262' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47008'>
+ <var-decl name='sym_end' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='263' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47040'>
+ <var-decl name='opt_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='265' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47072'>
+ <var-decl name='static_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='266' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47104'>
+ <var-decl name='matches' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='267' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47136'>
+ <var-decl name='insert' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='268' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47168'>
+ <var-decl name='compressed_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='271' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47200'>
+ <var-decl name='bits_sent' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='272' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47232'>
+ <var-decl name='reserved_p' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='275' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47296'>
+ <var-decl name='bi_buf' type-id='type-id-33' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='277' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47360'>
+ <var-decl name='bi_valid' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='280' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47392'>
+ <var-decl name='reserved' type-id='type-id-35' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='284' column='1'/>
+ </data-member>
+ </class-decl>
+ <type-decl name='int' size-in-bits='32' id='type-id-16'/>
+ <type-decl name='unsigned long int' size-in-bits='32' id='type-id-31'/>
+ <typedef-decl name='alloc_func' type-id='type-id-36' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='93' column='1' id='type-id-37'/>
+ <typedef-decl name='free_func' type-id='type-id-38' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='94' column='1' id='type-id-39'/>
+ <class-decl name='zng_stream_s' size-in-bits='448' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='98' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-41' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='avail_in' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='total_in' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='next_out' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='avail_out' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='total_out' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='msg' type-id='type-id-44' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='state' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='zalloc' type-id='type-id-37' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='zfree' type-id='type-id-39' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='opaque' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='data_type' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='adler' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='reserved' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='117' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_stream' type-id='type-id-40' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='118' column='1' id='type-id-47'/>
+ <typedef-decl name='int32_t' type-id='type-id-48' filepath='/usr/arm-linux-gnueabi/include/bits/stdint-intn.h' line='26' column='1' id='type-id-34'/>
+ <typedef-decl name='uint8_t' type-id='type-id-49' filepath='/usr/arm-linux-gnueabi/include/bits/stdint-uintn.h' line='24' column='1' id='type-id-50'/>
+ <typedef-decl name='__uint8_t' type-id='type-id-2' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='38' column='1' id='type-id-49'/>
+ <typedef-decl name='__int32_t' type-id='type-id-16' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='41' column='1' id='type-id-48'/>
+ <typedef-decl name='size_t' type-id='type-id-3' filepath='/usr/lib/gcc-cross/arm-linux-gnueabi/11/include/stddef.h' line='209' column='1' id='type-id-42'/>
+ <qualified-type-def type-id='type-id-12' const='yes' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-51' size-in-bits='32' id='type-id-44'/>
+ <qualified-type-def type-id='type-id-50' const='yes' id='type-id-52'/>
+ <pointer-type-def type-id='type-id-52' size-in-bits='32' id='type-id-41'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='32' id='type-id-45'/>
+ <pointer-type-def type-id='type-id-42' size-in-bits='32' id='type-id-53'/>
+ <pointer-type-def type-id='type-id-50' size-in-bits='32' id='type-id-43'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='32' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-54' size-in-bits='32' id='type-id-38'/>
+ <pointer-type-def type-id='type-id-4' size-in-bits='32' id='type-id-46'/>
+ <pointer-type-def type-id='type-id-55' size-in-bits='32' id='type-id-36'/>
+ <pointer-type-def type-id='type-id-47' size-in-bits='32' id='type-id-14'/>
+ <function-decl name='zng_compress2' mangled-name='zng_compress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <parameter type-id='type-id-16' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_compress' mangled-name='zng_compress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_compressBound' mangled-name='zng_compressBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compressBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit' mangled-name='zng_deflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='227' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflate' mangled-name='zng_deflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='248' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateEnd' mangled-name='zng_deflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='362' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-54'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-55'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='arm_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/arm/arm_features.h' line='11' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <qualified-type-def type-id='type-id-6' const='yes' id='type-id-56'/>
+ <pointer-type-def type-id='type-id-56' size-in-bits='32' id='type-id-57'/>
+ <function-decl name='zng_get_crc_table' mangled-name='zng_get_crc_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='18' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_get_crc_table@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-57'/>
+ </function-decl>
+ <function-decl name='zng_crc32' mangled-name='zng_crc32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_crc32_combine' mangled-name='zng_crc32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_gen' mangled-name='zng_crc32_combine_gen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine_gen@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_op' mangled-name='zng_crc32_combine_op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine_op@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-56' name='op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-58'/>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='1248' id='type-id-26'>
+ <subrange length='39' type-id='type-id-3' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='18336' id='type-id-24'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='1952' id='type-id-25'>
+ <subrange length='61' type-id='type-id-3' id='type-id-62'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-34' size-in-bits='352' id='type-id-35'>
+ <subrange length='11' type-id='type-id-3' id='type-id-63'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-16' size-in-bits='18336' id='type-id-29'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-64'/>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='256' id='type-id-28'>
+ <subrange length='16' type-id='type-id-3' id='type-id-66'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='512' id='type-id-67'>
+ <subrange length='64' type-id='type-id-3' id='type-id-68'/>
+ </array-type-def>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-69'/>
+ <array-type-def dimensions='1' type-id='type-id-2' size-in-bits='4584' id='type-id-30'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-70'/>
+ <class-decl name='crc32_fold_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='11' column='1' id='type-id-23'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fold' type-id='type-id-67' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='12' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='value' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='13' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='77' column='1' id='type-id-59'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-71' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='81' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-72' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='85' column='1'/>
+ </data-member>
+ </class-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='78' column='1' id='type-id-71'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='79' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='80' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='82' column='1' id='type-id-72'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='83' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='84' column='1'/>
+ </data-member>
+ </union-decl>
+ <typedef-decl name='ct_data' type-id='type-id-59' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='86' column='1' id='type-id-73'/>
+ <typedef-decl name='static_tree_desc' type-id='type-id-58' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='93' column='1' id='type-id-74'/>
+ <class-decl name='tree_desc_s' size-in-bits='96' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='95' column='1' id='type-id-27'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-75' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='max_code' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='stat_desc' type-id='type-id-76' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='98' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='Pos' type-id='type-id-65' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='101' column='1' id='type-id-19'/>
+ <typedef-decl name='deflate_state' type-id='type-id-13' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='107' column='1' id='type-id-77'/>
+ <typedef-decl name='update_hash_cb' type-id='type-id-78' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='109' column='1' id='type-id-20'/>
+ <typedef-decl name='insert_string_cb' type-id='type-id-79' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='110' column='1' id='type-id-21'/>
+ <typedef-decl name='quick_insert_string_cb' type-id='type-id-80' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='111' column='1' id='type-id-22'/>
+ <enum-decl name='block_state' naming-typedef-id='type-id-81' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='287' column='1' id='type-id-82'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='need_more' value='0'/>
+ <enumerator name='block_done' value='1'/>
+ <enumerator name='finish_started' value='2'/>
+ <enumerator name='finish_done' value='3'/>
+ </enum-decl>
+ <typedef-decl name='block_state' type-id='type-id-82' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='292' column='1' id='type-id-81'/>
+ <typedef-decl name='zng_calloc_func' type-id='type-id-55' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='132' column='1' id='type-id-83'/>
+ <typedef-decl name='zng_cfree_func' type-id='type-id-54' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='133' column='1' id='type-id-84'/>
+ <class-decl name='zng_gz_header_s' size-in-bits='416' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='126' column='1' id='type-id-85'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='time' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='xflags' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='os' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='extra' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='extra_len' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='name' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='name_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='comment' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='comm_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='137' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='hcrc' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='done' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='139' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_gz_header' type-id='type-id-85' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='140' column='1' id='type-id-86'/>
+ <typedef-decl name='zng_gz_headerp' type-id='type-id-87' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='142' column='1' id='type-id-17'/>
+ <enum-decl name='zng_deflate_param' naming-typedef-id='type-id-88' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1800' column='1' id='type-id-89'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='Z_DEFLATE_LEVEL' value='0'/>
+ <enumerator name='Z_DEFLATE_STRATEGY' value='1'/>
+ <enumerator name='Z_DEFLATE_REPRODUCIBLE' value='2'/>
+ </enum-decl>
+ <typedef-decl name='zng_deflate_param' type-id='type-id-89' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1810' column='1' id='type-id-88'/>
+ <class-decl name='zng_deflate_param_value' size-in-bits='128' is-struct='yes' naming-typedef-id='type-id-90' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1812' column='1' id='type-id-91'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='param' type-id='type-id-88' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1813' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='buf' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1814' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='size' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1815' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='status' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1816' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_deflate_param_value' type-id='type-id-91' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1817' column='1' id='type-id-90'/>
+ <typedef-decl name='uint16_t' type-id='type-id-92' filepath='/usr/arm-linux-gnueabi/include/bits/stdint-uintn.h' line='25' column='1' id='type-id-65'/>
+ <typedef-decl name='uint64_t' type-id='type-id-93' filepath='/usr/arm-linux-gnueabi/include/bits/stdint-uintn.h' line='27' column='1' id='type-id-33'/>
+ <typedef-decl name='__uint16_t' type-id='type-id-70' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='40' column='1' id='type-id-92'/>
+ <typedef-decl name='__uint64_t' type-id='type-id-64' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='48' column='1' id='type-id-93'/>
+ <pointer-type-def type-id='type-id-19' size-in-bits='32' id='type-id-18'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='32' id='type-id-32'/>
+ <qualified-type-def type-id='type-id-74' const='yes' id='type-id-94'/>
+ <pointer-type-def type-id='type-id-94' size-in-bits='32' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-73' size-in-bits='32' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-77' size-in-bits='32' id='type-id-95'/>
+ <qualified-type-def type-id='type-id-95' const='yes' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-34' size-in-bits='32' id='type-id-97'/>
+ <pointer-type-def type-id='type-id-98' size-in-bits='32' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-99' size-in-bits='32' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-6' size-in-bits='32' id='type-id-100'/>
+ <pointer-type-def type-id='type-id-101' size-in-bits='32' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-83' size-in-bits='32' id='type-id-102'/>
+ <pointer-type-def type-id='type-id-84' size-in-bits='32' id='type-id-103'/>
+ <pointer-type-def type-id='type-id-90' size-in-bits='32' id='type-id-104'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='32' id='type-id-87'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-58'/>
+ <function-decl name='cpu_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='23' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='deflate_stored' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='111' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_fast' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='112' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_quick' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='113' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_medium' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='115' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_slow' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='117' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_rle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='118' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_huff' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='update_hash_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='124' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='125' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='126' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2' mangled-name='zng_deflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit_' mangled-name='zng_deflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2_' mangled-name='zng_deflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetDictionary' mangled-name='zng_deflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetDictionary' mangled-name='zng_deflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-43' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-100' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateResetKeep' mangled-name='zng_deflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateReset' mangled-name='zng_deflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetHeader' mangled-name='zng_deflateSetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <parameter type-id='type-id-17' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePending' mangled-name='zng_deflatePending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflatePending@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-100' name='pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-97' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePrime' mangled-name='zng_deflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateParams' mangled-name='zng_deflateParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateTune' mangled-name='zng_deflateTune' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateTune@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='good_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_lazy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='nice_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_chain' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateBound' mangled-name='zng_deflateBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <parameter type-id='type-id-31' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ <function-decl name='zng_deflateCopy' mangled-name='zng_deflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <parameter type-id='type-id-14' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetParams' mangled-name='zng_deflateSetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-104' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-42' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetParams' mangled-name='zng_deflateGetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateGetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-104' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-42' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_tr_init' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='380' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='382' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_align' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='383' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_stored_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='384' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_zcalloc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='129' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='zng_zcfree' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='130' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_alloc_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='135' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-102'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='zng_free_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='136' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-103'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-98'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-19'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-99'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-101'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_fast.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_fill_window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='376' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='381' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_flush_pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='50' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_quick.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='memcmp' filepath='/usr/arm-linux-gnueabi/include/string.h' line='64' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_stored.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_read_buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='51' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-3'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='crc32_fold' type-id='type-id-23' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='14' column='1' id='type-id-105'/>
+ <class-decl name='functable_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='19' column='1' id='type-id-106'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='adler32' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='adler32_fold_copy' type-id='type-id-108' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='crc32' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='crc32_fold_reset' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='crc32_fold_copy' type-id='type-id-110' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='crc32_fold' type-id='type-id-111' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='crc32_fold_final' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='compare256' type-id='type-id-112' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='chunksize' type-id='type-id-113' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='chunkmemset_safe' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='inflate_fast' type-id='type-id-115' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='insert_string' type-id='type-id-79' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='longest_match' type-id='type-id-116' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='32' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='longest_match_slow' type-id='type-id-116' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='quick_insert_string' type-id='type-id-80' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='slide_hash' type-id='type-id-117' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='update_hash' type-id='type-id-78' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='36' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-105' size-in-bits='32' id='type-id-118'/>
+ <pointer-type-def type-id='type-id-23' size-in-bits='32' id='type-id-119'/>
+ <pointer-type-def type-id='type-id-120' size-in-bits='32' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-121' size-in-bits='32' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-122' size-in-bits='32' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-123' size-in-bits='32' id='type-id-116'/>
+ <pointer-type-def type-id='type-id-124' size-in-bits='32' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-125' size-in-bits='32' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-126' size-in-bits='32' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-127' size-in-bits='32' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-128' size-in-bits='32' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-129' size-in-bits='32' id='type-id-117'/>
+ <pointer-type-def type-id='type-id-130' size-in-bits='32' id='type-id-115'/>
+ <function-decl name='adler32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.h' line='9' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='28' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='30' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunksize_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='75' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='76' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='chunksize_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='89' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='90' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='inflate_fast_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='104' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='inflate_fast_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='115' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_crc32_braid' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='124' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='126' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='136' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='161' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='insert_string_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='165' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='longest_match_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='169' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='186' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='193' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='208' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='215' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='219' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='slide_hash_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='228' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='update_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='241' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='update_hash_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='245' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_reset_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='16' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='17' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='crc32_fold_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='18' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='crc32_fold_final_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='19' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='slide_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='377' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <var-decl name='functable' type-id='type-id-106' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='39' column='1'/>
+ <function-type size-in-bits='32' id='type-id-120'>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-121'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-122'>
+ <parameter type-id='type-id-119'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-123'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-124'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-125'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-126'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-127'>
+ <parameter type-id='type-id-119'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-128'>
+ <parameter type-id='type-id-119'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-129'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-130'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='variadic parameter type' id='type-id-131'/>
+ <typedef-decl name='gzFile' type-id='type-id-132' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1285' column='1' id='type-id-133'/>
+ <class-decl name='gzFile_s' size-in-bits='128' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1790' column='1' id='type-id-134'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1791' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='next' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1792' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pos' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1793' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-134' size-in-bits='32' id='type-id-132'/>
+ <pointer-type-def type-id='type-id-16' size-in-bits='32' id='type-id-135'/>
+ <function-decl name='zng_gzopen' mangled-name='zng_gzopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-44' name='path' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <parameter type-id='type-id-44' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='zng_gzdopen' mangled-name='zng_gzdopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzdopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-16' name='fd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <parameter type-id='type-id-44' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='zng_gzclose' mangled-name='zng_gzclose' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzbuffer' mangled-name='zng_gzbuffer' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzbuffer@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <parameter type-id='type-id-3' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzrewind' mangled-name='zng_gzrewind' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzrewind@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzseek' mangled-name='zng_gzseek' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzseek@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-9' name='offset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-16' name='whence' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gztell' mangled-name='zng_gztell' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gztell@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzoffset' mangled-name='zng_gzoffset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzoffset@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzeof' mangled-name='zng_gzeof' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzeof@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzerror' mangled-name='zng_gzerror' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzerror@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <parameter type-id='type-id-135' name='errnum' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <function-decl name='zng_gzclearerr' mangled-name='zng_gzclearerr' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclearerr@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_r' mangled-name='zng_gzclose_r' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1641' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose_r@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_w' mangled-name='zng_gzclose_w' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1643' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose_w@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='__open_2' filepath='/usr/arm-linux-gnueabi/include/bits/fcntl2.h' line='26' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-44'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='__open_too_many_args' filepath='/usr/arm-linux-gnueabi/include/bits/fcntl2.h' line='35' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='__open_missing_mode' filepath='/usr/arm-linux-gnueabi/include/bits/fcntl2.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/arm-linux-gnueabi/include/stdlib.h' line='540' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/arm-linux-gnueabi/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-44'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/arm-linux-gnueabi/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='__va_list' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-136'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='__ap' type-id='type-id-46' visibility='default'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-136' filepath='/usr/lib/gcc-cross/arm-linux-gnueabi/11/include/stdarg.h' line='40' column='1' id='type-id-137'/>
+ <typedef-decl name='va_list' type-id='type-id-137' filepath='/usr/lib/gcc-cross/arm-linux-gnueabi/11/include/stdarg.h' line='99' column='1' id='type-id-138'/>
+ <function-decl name='zng_gzwrite' mangled-name='zng_gzwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzfwrite' mangled-name='zng_gzfwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzfwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-42' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-42' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_gzputc' mangled-name='zng_gzputc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzputc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <parameter type-id='type-id-16' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzputs' mangled-name='zng_gzputs' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzputs@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <parameter type-id='type-id-44' name='s' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzvprintf' mangled-name='zng_gzvprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzvprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-44' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-138' name='va' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzprintf' mangled-name='zng_gzprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter type-id='type-id-44' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzflush' mangled-name='zng_gzflush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzflush@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <parameter type-id='type-id-16' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzsetparams' mangled-name='zng_gzsetparams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzsetparams@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-16' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-16' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/arm-linux-gnueabi/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-139'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-140' size-in-bits='61568' id='type-id-141'>
+ <subrange length='1924' type-id='type-id-3' id='type-id-142'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='4608' id='type-id-143'>
+ <subrange length='288' type-id='type-id-3' id='type-id-144'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='5120' id='type-id-145'>
+ <subrange length='320' type-id='type-id-3' id='type-id-146'/>
+ </array-type-def>
+ <enum-decl name='inflate_mode' naming-typedef-id='type-id-147' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='25' column='1' id='type-id-148'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='HEAD' value='16180'/>
+ <enumerator name='FLAGS' value='16181'/>
+ <enumerator name='TIME' value='16182'/>
+ <enumerator name='OS' value='16183'/>
+ <enumerator name='EXLEN' value='16184'/>
+ <enumerator name='EXTRA' value='16185'/>
+ <enumerator name='NAME' value='16186'/>
+ <enumerator name='COMMENT' value='16187'/>
+ <enumerator name='HCRC' value='16188'/>
+ <enumerator name='DICTID' value='16189'/>
+ <enumerator name='DICT' value='16190'/>
+ <enumerator name='TYPE' value='16191'/>
+ <enumerator name='TYPEDO' value='16192'/>
+ <enumerator name='STORED' value='16193'/>
+ <enumerator name='COPY_' value='16194'/>
+ <enumerator name='COPY' value='16195'/>
+ <enumerator name='TABLE' value='16196'/>
+ <enumerator name='LENLENS' value='16197'/>
+ <enumerator name='CODELENS' value='16198'/>
+ <enumerator name='LEN_' value='16199'/>
+ <enumerator name='LEN' value='16200'/>
+ <enumerator name='LENEXT' value='16201'/>
+ <enumerator name='DIST' value='16202'/>
+ <enumerator name='DISTEXT' value='16203'/>
+ <enumerator name='MATCH' value='16204'/>
+ <enumerator name='LIT' value='16205'/>
+ <enumerator name='CHECK' value='16206'/>
+ <enumerator name='LENGTH' value='16207'/>
+ <enumerator name='DONE' value='16208'/>
+ <enumerator name='BAD' value='16209'/>
+ <enumerator name='MEM' value='16210'/>
+ <enumerator name='SYNC' value='16211'/>
+ </enum-decl>
+ <typedef-decl name='inflate_mode' type-id='type-id-148' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='58' column='1' id='type-id-147'/>
+ <class-decl name='inflate_state' size-in-bits='72960' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='87' column='1' id='type-id-149'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='mode' type-id='type-id-147' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='last' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='90' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='wrap' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='havedict' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='flags' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='94' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='dmax' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='check' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='total' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='head' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='wbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='wsize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='whave' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='wnext' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='window' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='crc_fold' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='hold' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='length' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='offset' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='extra' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='lencode' type-id='type-id-150' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1248'>
+ <var-decl name='distcode' type-id='type-id-150' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='lenbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='distbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='ncode' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1376'>
+ <var-decl name='nlen' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='ndist' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='have' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='next' type-id='type-id-151' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='lens' type-id='type-id-145' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='6624'>
+ <var-decl name='work' type-id='type-id-143' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='11232'>
+ <var-decl name='codes' type-id='type-id-141' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72800'>
+ <var-decl name='sane' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72832'>
+ <var-decl name='back' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72864'>
+ <var-decl name='was' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72896'>
+ <var-decl name='chunksize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='134' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-140' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='27' column='1' id='type-id-152'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='30' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-152' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='31' column='1' id='type-id-140'/>
+ <enum-decl name='codetype' naming-typedef-id='type-id-153' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='57' column='1' id='type-id-154'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <typedef-decl name='codetype' type-id='type-id-154' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='61' column='1' id='type-id-153'/>
+ <typedef-decl name='in_func' type-id='type-id-155' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1075' column='1' id='type-id-156'/>
+ <typedef-decl name='out_func' type-id='type-id-157' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1076' column='1' id='type-id-158'/>
+ <pointer-type-def type-id='type-id-140' size-in-bits='32' id='type-id-151'/>
+ <pointer-type-def type-id='type-id-151' size-in-bits='32' id='type-id-159'/>
+ <qualified-type-def type-id='type-id-140' const='yes' id='type-id-160'/>
+ <pointer-type-def type-id='type-id-160' size-in-bits='32' id='type-id-150'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='32' id='type-id-161'/>
+ <pointer-type-def type-id='type-id-149' size-in-bits='32' id='type-id-162'/>
+ <pointer-type-def type-id='type-id-163' size-in-bits='32' id='type-id-157'/>
+ <pointer-type-def type-id='type-id-164' size-in-bits='32' id='type-id-155'/>
+ <pointer-type-def type-id='type-id-65' size-in-bits='32' id='type-id-165'/>
+ <pointer-type-def type-id='type-id-3' size-in-bits='32' id='type-id-166'/>
+ <function-decl name='zng_inflateBackInit' mangled-name='zng_inflateBackInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-43' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackInit_' mangled-name='zng_inflateBackInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-43' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBack' mangled-name='zng_inflateBack' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBack@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-156' name='in' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-46' name='in_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-158' name='out' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-46' name='out_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackEnd' mangled-name='zng_inflateBackEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_fixedtables' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='138' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-162'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_inflate_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='63' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-153'/>
+ <parameter type-id='type-id-165'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-159'/>
+ <parameter type-id='type-id-166'/>
+ <parameter type-id='type-id-165'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-163'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-34'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-164'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-161'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='32' id='type-id-167'/>
+ <function-decl name='zng_inflateResetKeep' mangled-name='zng_inflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset' mangled-name='zng_inflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset2' mangled-name='zng_inflateReset2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateReset2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2' mangled-name='zng_inflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit' mangled-name='zng_inflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit_' mangled-name='zng_inflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2_' mangled-name='zng_inflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflatePrime' mangled-name='zng_inflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflate' mangled-name='zng_inflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-34' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateEnd' mangled-name='zng_inflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetDictionary' mangled-name='zng_inflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-43' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-100' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSetDictionary' mangled-name='zng_inflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetHeader' mangled-name='zng_inflateGetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateGetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <parameter type-id='type-id-17' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSync' mangled-name='zng_inflateSync' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSync@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSyncPoint' mangled-name='zng_inflateSyncPoint' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSyncPoint@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateCopy' mangled-name='zng_inflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-14' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateUndermine' mangled-name='zng_inflateUndermine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateUndermine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <parameter type-id='type-id-34' name='subvert' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateValidate' mangled-name='zng_inflateValidate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateValidate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <parameter type-id='type-id-34' name='check' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateMark' mangled-name='zng_inflateMark' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateMark@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1'/>
+ <return type-id='type-id-167'/>
+ </function-decl>
+ <function-decl name='zng_inflateCodesUsed' mangled-name='zng_inflateCodesUsed' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateCodesUsed@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-168' size-in-bits='9216' id='type-id-169'>
+ <subrange length='288' type-id='type-id-3' id='type-id-144'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-168' size-in-bits='960' id='type-id-170'>
+ <subrange length='30' type-id='type-id-3' id='type-id-171'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-172' size-in-bits='928' id='type-id-173'>
+ <subrange length='29' type-id='type-id-3' id='type-id-174'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-172' size-in-bits='960' id='type-id-175'>
+ <subrange length='30' type-id='type-id-3' id='type-id-171'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='2048' id='type-id-176'>
+ <subrange length='256' type-id='type-id-3' id='type-id-177'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='4096' id='type-id-178'>
+ <subrange length='512' type-id='type-id-3' id='type-id-179'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-73' const='yes' id='type-id-168'/>
+ <qualified-type-def type-id='type-id-16' const='yes' id='type-id-172'/>
+ <var-decl name='static_ltree' type-id='type-id-169' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='14' column='1'/>
+ <var-decl name='static_dtree' type-id='type-id-170' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='15' column='1'/>
+ <var-decl name='zng_dist_code' type-id='type-id-178' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='17' column='1'/>
+ <var-decl name='zng_length_code' type-id='type-id-176' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='18' column='1'/>
+ <var-decl name='base_length' type-id='type-id-173' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='20' column='1'/>
+ <var-decl name='base_dist' type-id='type-id-175' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='21' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_uncompress2' mangled-name='zng_uncompress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_uncompress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-53' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_uncompress' mangled-name='zng_uncompress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_uncompress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-180' size-in-bits='320' id='type-id-181'>
+ <subrange length='10' type-id='type-id-3' id='type-id-182'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-51' size-in-bits='304' id='type-id-183'>
+ <subrange length='38' type-id='type-id-3' id='type-id-184'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-44' const='yes' id='type-id-180'/>
+ <pointer-type-def type-id='type-id-46' size-in-bits='32' id='type-id-185'/>
+ <var-decl name='zng_vstring' type-id='type-id-183' mangled-name='zng_vstring' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='23' column='1' elf-symbol-id='zng_vstring@@ZLIB_NG_2.0.0'/>
+ <function-decl name='zlibng_version' mangled-name='zlibng_version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='31' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibng_version@@ZLIB_NG_2.1.0'>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <function-decl name='zng_zlibCompileFlags' mangled-name='zng_zlibCompileFlags' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='36' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_zlibCompileFlags@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ <function-decl name='zng_zError' mangled-name='zng_zError' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_zError@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='err' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1'/>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <var-decl name='zng_z_errmsg' type-id='type-id-181' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='24' column='1'/>
+ <function-decl name='free' filepath='/usr/arm-linux-gnueabi/include/stdlib.h' line='555' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='posix_memalign' filepath='/usr/arm-linux-gnueabi/include/stdlib.h' line='586' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-185'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/arm/arm_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/arm' language='LANG_C11'>
+ <function-decl name='getauxval' filepath='/usr/arm-linux-gnueabi/include/sys/auxv.h' line='31' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-31'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1344' is-struct='yes' naming-typedef-id='type-id-186' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='102' column='1' id='type-id-187'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-134' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='mode' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='fd' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='path' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='want' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='in' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='out' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='direct' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='how' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='start' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='eof' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='past' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='level' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='strategy' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='reset' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='skip' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='seek' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='err' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='msg' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strm' type-id='type-id-47' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='133' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gz_state' type-id='type-id-187' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='134' column='1' id='type-id-186'/>
+ <typedef-decl name='__ssize_t' type-id='type-id-16' filepath='/usr/arm-linux-gnueabi/include/bits/types.h' line='194' column='1' id='type-id-188'/>
+ <typedef-decl name='ssize_t' type-id='type-id-188' filepath='/usr/arm-linux-gnueabi/include/stdio.h' line='77' column='1' id='type-id-139'/>
+ <pointer-type-def type-id='type-id-186' size-in-bits='32' id='type-id-189'/>
+ <function-decl name='zng_gzread' mangled-name='zng_gzread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzfread' mangled-name='zng_gzfread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzfread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-42' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-42' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_gzgetc' mangled-name='zng_gzgetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzgetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzungetc' mangled-name='zng_gzungetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzungetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-16' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzgets' mangled-name='zng_gzgets' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzgets@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-32' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-16' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='zng_gzdirect' mangled-name='zng_gzdirect' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzdirect@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='138' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-189'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-44'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='__read_chk' filepath='/usr/arm-linux-gnueabi/include/bits/unistd.h' line='23' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-139'/>
+ </function-decl>
+ <function-decl name='__errno_location' filepath='/usr/arm-linux-gnueabi/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-135'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/arm-linux-gnueabi/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/arm-linux-gnueabi/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/arm-linux-gnueabi/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-arm-unknown-linux-gnueabihf.abi b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-arm-unknown-linux-gnueabihf.abi
new file mode 100644
index 0000000000..f5b3aa7737
--- /dev/null
+++ b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-arm-unknown-linux-gnueabihf.abi
@@ -0,0 +1,1881 @@
+<abi-corpus version='2.0' path='btmp1/libz-ng.so.2.1.0.devel' architecture='elf-arm' soname='libz-ng.so.2'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld-linux-armhf.so.3'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='zlibng_version' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compressBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_gen' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_op' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePending' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateTune' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_get_crc_table' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzbuffer' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclearerr' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_r' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_w' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdirect' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzeof' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzerror' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzflush' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgets' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzoffset' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputs' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzrewind' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzseek' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzsetparams' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gztell' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzungetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzvprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBack' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCodesUsed' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateMark' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSync' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSyncPoint' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateUndermine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateValidate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zError' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zlibCompileFlags' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <elf-variable-symbols>
+ <elf-symbol name='zng_vstring' size='38' version='ZLIB_NG_2.0.0' is-default-version='yes' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-variable-symbols>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='void' id='type-id-4'/>
+ <typedef-decl name='uint32_t' type-id='type-id-5' filepath='/usr/arm-linux-gnueabihf/include/bits/stdint-uintn.h' line='26' column='1' id='type-id-6'/>
+ <typedef-decl name='__uint32_t' type-id='type-id-3' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='42' column='1' id='type-id-5'/>
+ <typedef-decl name='__int64_t' type-id='type-id-1' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='47' column='1' id='type-id-7'/>
+ <typedef-decl name='__off64_t' type-id='type-id-7' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='153' column='1' id='type-id-8'/>
+ <typedef-decl name='off64_t' type-id='type-id-8' filepath='/usr/arm-linux-gnueabihf/include/sys/types.h' line='92' column='1' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-10'/>
+ <pointer-type-def type-id='type-id-10' size-in-bits='32' id='type-id-11'/>
+ <function-decl name='zng_adler32' mangled-name='zng_adler32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_adler32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_adler32_combine' mangled-name='zng_adler32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_adler32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-6' name='adler2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-12'/>
+ <class-decl name='internal_state' size-in-bits='47744' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='113' column='1' id='type-id-13'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='pending_buf' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_out' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='pending_buf_size' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='wrap' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='gzindex' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='gzhead' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='status' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='last_flush' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='reproducible' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='block_open' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='w_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='w_bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='w_mask' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='lookahead' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='high_water' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='window_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='window' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='150' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='prev' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='head' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='ins_h' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='168' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='block_start' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='170' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='match_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='175' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='prev_match' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='176' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='match_available' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='strstart' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='match_start' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='prev_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='max_chain_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='max_lazy_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='update_hash' type-id='type-id-20' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='201' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='insert_string' type-id='type-id-21' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='quick_insert_string' type-id='type-id-22' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='level' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='207' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='strategy' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='208' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='good_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='nice_match' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='213' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='crc_fold' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='215' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1824'>
+ <var-decl name='dyn_ltree' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='219' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20160'>
+ <var-decl name='dyn_dtree' type-id='type-id-25' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22112'>
+ <var-decl name='bl_tree' type-id='type-id-26' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='221' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23360'>
+ <var-decl name='l_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='223' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23456'>
+ <var-decl name='d_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='224' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23552'>
+ <var-decl name='bl_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='225' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23648'>
+ <var-decl name='bl_count' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='227' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23904'>
+ <var-decl name='heap' type-id='type-id-29' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='230' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42240'>
+ <var-decl name='heap_len' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='231' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42272'>
+ <var-decl name='heap_max' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='232' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42304'>
+ <var-decl name='depth' type-id='type-id-30' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='237' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46912'>
+ <var-decl name='lit_bufsize' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='241' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46944'>
+ <var-decl name='sym_buf' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='261' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46976'>
+ <var-decl name='sym_next' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='262' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47008'>
+ <var-decl name='sym_end' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='263' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47040'>
+ <var-decl name='opt_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='265' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47072'>
+ <var-decl name='static_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='266' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47104'>
+ <var-decl name='matches' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='267' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47136'>
+ <var-decl name='insert' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='268' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47168'>
+ <var-decl name='compressed_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='271' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47200'>
+ <var-decl name='bits_sent' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='272' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47232'>
+ <var-decl name='reserved_p' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='275' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47296'>
+ <var-decl name='bi_buf' type-id='type-id-33' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='277' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47360'>
+ <var-decl name='bi_valid' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='280' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47392'>
+ <var-decl name='reserved' type-id='type-id-35' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='284' column='1'/>
+ </data-member>
+ </class-decl>
+ <type-decl name='int' size-in-bits='32' id='type-id-16'/>
+ <type-decl name='unsigned long int' size-in-bits='32' id='type-id-31'/>
+ <typedef-decl name='alloc_func' type-id='type-id-36' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='93' column='1' id='type-id-37'/>
+ <typedef-decl name='free_func' type-id='type-id-38' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='94' column='1' id='type-id-39'/>
+ <class-decl name='zng_stream_s' size-in-bits='448' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='98' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-41' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='avail_in' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='total_in' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='next_out' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='avail_out' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='total_out' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='msg' type-id='type-id-44' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='state' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='zalloc' type-id='type-id-37' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='zfree' type-id='type-id-39' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='opaque' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='data_type' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='adler' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='reserved' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='117' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_stream' type-id='type-id-40' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='118' column='1' id='type-id-47'/>
+ <typedef-decl name='int32_t' type-id='type-id-48' filepath='/usr/arm-linux-gnueabihf/include/bits/stdint-intn.h' line='26' column='1' id='type-id-34'/>
+ <typedef-decl name='uint8_t' type-id='type-id-49' filepath='/usr/arm-linux-gnueabihf/include/bits/stdint-uintn.h' line='24' column='1' id='type-id-50'/>
+ <typedef-decl name='__uint8_t' type-id='type-id-2' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='38' column='1' id='type-id-49'/>
+ <typedef-decl name='__int32_t' type-id='type-id-16' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='41' column='1' id='type-id-48'/>
+ <typedef-decl name='size_t' type-id='type-id-3' filepath='/usr/lib/gcc-cross/arm-linux-gnueabihf/11/include/stddef.h' line='209' column='1' id='type-id-42'/>
+ <qualified-type-def type-id='type-id-12' const='yes' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-51' size-in-bits='32' id='type-id-44'/>
+ <qualified-type-def type-id='type-id-50' const='yes' id='type-id-52'/>
+ <pointer-type-def type-id='type-id-52' size-in-bits='32' id='type-id-41'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='32' id='type-id-45'/>
+ <pointer-type-def type-id='type-id-42' size-in-bits='32' id='type-id-53'/>
+ <pointer-type-def type-id='type-id-50' size-in-bits='32' id='type-id-43'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='32' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-54' size-in-bits='32' id='type-id-38'/>
+ <pointer-type-def type-id='type-id-4' size-in-bits='32' id='type-id-46'/>
+ <pointer-type-def type-id='type-id-55' size-in-bits='32' id='type-id-36'/>
+ <pointer-type-def type-id='type-id-47' size-in-bits='32' id='type-id-14'/>
+ <function-decl name='zng_compress2' mangled-name='zng_compress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <parameter type-id='type-id-16' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_compress' mangled-name='zng_compress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_compressBound' mangled-name='zng_compressBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compressBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit' mangled-name='zng_deflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='227' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflate' mangled-name='zng_deflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='248' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateEnd' mangled-name='zng_deflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='362' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-54'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-55'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='arm_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/arm/arm_features.h' line='11' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <qualified-type-def type-id='type-id-6' const='yes' id='type-id-56'/>
+ <pointer-type-def type-id='type-id-56' size-in-bits='32' id='type-id-57'/>
+ <function-decl name='zng_get_crc_table' mangled-name='zng_get_crc_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='18' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_get_crc_table@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-57'/>
+ </function-decl>
+ <function-decl name='zng_crc32' mangled-name='zng_crc32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_crc32_combine' mangled-name='zng_crc32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_gen' mangled-name='zng_crc32_combine_gen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine_gen@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_op' mangled-name='zng_crc32_combine_op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine_op@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-56' name='op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-58'/>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='1248' id='type-id-26'>
+ <subrange length='39' type-id='type-id-3' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='18336' id='type-id-24'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='1952' id='type-id-25'>
+ <subrange length='61' type-id='type-id-3' id='type-id-62'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-34' size-in-bits='352' id='type-id-35'>
+ <subrange length='11' type-id='type-id-3' id='type-id-63'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-16' size-in-bits='18336' id='type-id-29'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-64'/>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='256' id='type-id-28'>
+ <subrange length='16' type-id='type-id-3' id='type-id-66'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='512' id='type-id-67'>
+ <subrange length='64' type-id='type-id-3' id='type-id-68'/>
+ </array-type-def>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-69'/>
+ <array-type-def dimensions='1' type-id='type-id-2' size-in-bits='4584' id='type-id-30'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-70'/>
+ <class-decl name='crc32_fold_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='11' column='1' id='type-id-23'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fold' type-id='type-id-67' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='12' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='value' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='13' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='77' column='1' id='type-id-59'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-71' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='81' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-72' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='85' column='1'/>
+ </data-member>
+ </class-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='78' column='1' id='type-id-71'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='79' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='80' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='82' column='1' id='type-id-72'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='83' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='84' column='1'/>
+ </data-member>
+ </union-decl>
+ <typedef-decl name='ct_data' type-id='type-id-59' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='86' column='1' id='type-id-73'/>
+ <typedef-decl name='static_tree_desc' type-id='type-id-58' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='93' column='1' id='type-id-74'/>
+ <class-decl name='tree_desc_s' size-in-bits='96' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='95' column='1' id='type-id-27'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-75' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='max_code' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='stat_desc' type-id='type-id-76' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='98' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='Pos' type-id='type-id-65' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='101' column='1' id='type-id-19'/>
+ <typedef-decl name='deflate_state' type-id='type-id-13' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='107' column='1' id='type-id-77'/>
+ <typedef-decl name='update_hash_cb' type-id='type-id-78' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='109' column='1' id='type-id-20'/>
+ <typedef-decl name='insert_string_cb' type-id='type-id-79' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='110' column='1' id='type-id-21'/>
+ <typedef-decl name='quick_insert_string_cb' type-id='type-id-80' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='111' column='1' id='type-id-22'/>
+ <enum-decl name='block_state' naming-typedef-id='type-id-81' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='287' column='1' id='type-id-82'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='need_more' value='0'/>
+ <enumerator name='block_done' value='1'/>
+ <enumerator name='finish_started' value='2'/>
+ <enumerator name='finish_done' value='3'/>
+ </enum-decl>
+ <typedef-decl name='block_state' type-id='type-id-82' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='292' column='1' id='type-id-81'/>
+ <typedef-decl name='zng_calloc_func' type-id='type-id-55' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='132' column='1' id='type-id-83'/>
+ <typedef-decl name='zng_cfree_func' type-id='type-id-54' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='133' column='1' id='type-id-84'/>
+ <class-decl name='zng_gz_header_s' size-in-bits='416' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='126' column='1' id='type-id-85'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='time' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='xflags' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='os' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='extra' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='extra_len' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='name' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='name_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='comment' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='comm_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='137' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='hcrc' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='done' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='139' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_gz_header' type-id='type-id-85' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='140' column='1' id='type-id-86'/>
+ <typedef-decl name='zng_gz_headerp' type-id='type-id-87' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='142' column='1' id='type-id-17'/>
+ <enum-decl name='zng_deflate_param' naming-typedef-id='type-id-88' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1800' column='1' id='type-id-89'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='Z_DEFLATE_LEVEL' value='0'/>
+ <enumerator name='Z_DEFLATE_STRATEGY' value='1'/>
+ <enumerator name='Z_DEFLATE_REPRODUCIBLE' value='2'/>
+ </enum-decl>
+ <typedef-decl name='zng_deflate_param' type-id='type-id-89' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1810' column='1' id='type-id-88'/>
+ <class-decl name='zng_deflate_param_value' size-in-bits='128' is-struct='yes' naming-typedef-id='type-id-90' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1812' column='1' id='type-id-91'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='param' type-id='type-id-88' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1813' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='buf' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1814' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='size' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1815' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='status' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1816' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_deflate_param_value' type-id='type-id-91' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1817' column='1' id='type-id-90'/>
+ <typedef-decl name='uint16_t' type-id='type-id-92' filepath='/usr/arm-linux-gnueabihf/include/bits/stdint-uintn.h' line='25' column='1' id='type-id-65'/>
+ <typedef-decl name='uint64_t' type-id='type-id-93' filepath='/usr/arm-linux-gnueabihf/include/bits/stdint-uintn.h' line='27' column='1' id='type-id-33'/>
+ <typedef-decl name='__uint16_t' type-id='type-id-70' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='40' column='1' id='type-id-92'/>
+ <typedef-decl name='__uint64_t' type-id='type-id-64' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='48' column='1' id='type-id-93'/>
+ <pointer-type-def type-id='type-id-19' size-in-bits='32' id='type-id-18'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='32' id='type-id-32'/>
+ <qualified-type-def type-id='type-id-74' const='yes' id='type-id-94'/>
+ <pointer-type-def type-id='type-id-94' size-in-bits='32' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-73' size-in-bits='32' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-77' size-in-bits='32' id='type-id-95'/>
+ <qualified-type-def type-id='type-id-95' const='yes' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-34' size-in-bits='32' id='type-id-97'/>
+ <pointer-type-def type-id='type-id-98' size-in-bits='32' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-99' size-in-bits='32' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-6' size-in-bits='32' id='type-id-100'/>
+ <pointer-type-def type-id='type-id-101' size-in-bits='32' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-83' size-in-bits='32' id='type-id-102'/>
+ <pointer-type-def type-id='type-id-84' size-in-bits='32' id='type-id-103'/>
+ <pointer-type-def type-id='type-id-90' size-in-bits='32' id='type-id-104'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='32' id='type-id-87'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-58'/>
+ <function-decl name='cpu_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='23' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='deflate_stored' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='111' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_fast' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='112' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_quick' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='113' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_medium' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='115' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_slow' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='117' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_rle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='118' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_huff' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='update_hash_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='124' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='125' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='126' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2' mangled-name='zng_deflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit_' mangled-name='zng_deflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2_' mangled-name='zng_deflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetDictionary' mangled-name='zng_deflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetDictionary' mangled-name='zng_deflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-43' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-100' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateResetKeep' mangled-name='zng_deflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateReset' mangled-name='zng_deflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetHeader' mangled-name='zng_deflateSetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <parameter type-id='type-id-17' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePending' mangled-name='zng_deflatePending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflatePending@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-100' name='pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-97' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePrime' mangled-name='zng_deflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateParams' mangled-name='zng_deflateParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateTune' mangled-name='zng_deflateTune' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateTune@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='good_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_lazy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='nice_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_chain' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateBound' mangled-name='zng_deflateBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <parameter type-id='type-id-31' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ <function-decl name='zng_deflateCopy' mangled-name='zng_deflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <parameter type-id='type-id-14' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetParams' mangled-name='zng_deflateSetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-104' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-42' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetParams' mangled-name='zng_deflateGetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateGetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-104' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-42' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_tr_init' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='380' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='382' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_align' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='383' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_stored_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='384' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_zcalloc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='129' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='zng_zcfree' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='130' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_alloc_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='135' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-102'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='zng_free_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='136' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-103'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-98'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-19'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-99'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-101'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_fast.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_fill_window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='376' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='381' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_flush_pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='50' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_stored.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_read_buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='51' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-3'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='crc32_fold' type-id='type-id-23' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='14' column='1' id='type-id-105'/>
+ <class-decl name='functable_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='19' column='1' id='type-id-106'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='adler32' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='adler32_fold_copy' type-id='type-id-108' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='crc32' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='crc32_fold_reset' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='crc32_fold_copy' type-id='type-id-110' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='crc32_fold' type-id='type-id-111' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='crc32_fold_final' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='compare256' type-id='type-id-112' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='chunksize' type-id='type-id-113' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='chunkmemset_safe' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='inflate_fast' type-id='type-id-115' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='insert_string' type-id='type-id-79' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='longest_match' type-id='type-id-116' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='32' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='longest_match_slow' type-id='type-id-116' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='quick_insert_string' type-id='type-id-80' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='slide_hash' type-id='type-id-117' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='update_hash' type-id='type-id-78' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='36' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-105' size-in-bits='32' id='type-id-118'/>
+ <pointer-type-def type-id='type-id-23' size-in-bits='32' id='type-id-119'/>
+ <pointer-type-def type-id='type-id-120' size-in-bits='32' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-121' size-in-bits='32' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-122' size-in-bits='32' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-123' size-in-bits='32' id='type-id-116'/>
+ <pointer-type-def type-id='type-id-124' size-in-bits='32' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-125' size-in-bits='32' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-126' size-in-bits='32' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-127' size-in-bits='32' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-128' size-in-bits='32' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-129' size-in-bits='32' id='type-id-117'/>
+ <pointer-type-def type-id='type-id-130' size-in-bits='32' id='type-id-115'/>
+ <function-decl name='adler32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.h' line='9' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='28' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='30' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunksize_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='75' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='76' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='chunksize_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='89' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='90' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='inflate_fast_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='104' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='inflate_fast_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='115' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_crc32_braid' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='124' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='126' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_unaligned_32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='140' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='161' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='insert_string_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='165' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='longest_match_unaligned_32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='173' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='186' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_unaligned_32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='196' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='208' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='215' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='219' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='slide_hash_neon' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='228' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='update_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='241' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='update_hash_acle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='245' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_reset_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='16' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='17' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='crc32_fold_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='18' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='crc32_fold_final_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='19' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='slide_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='377' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <var-decl name='functable' type-id='type-id-106' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='39' column='1'/>
+ <function-type size-in-bits='32' id='type-id-120'>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-121'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-122'>
+ <parameter type-id='type-id-119'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-123'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-124'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-125'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-126'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-127'>
+ <parameter type-id='type-id-119'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-128'>
+ <parameter type-id='type-id-119'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-129'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-130'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='variadic parameter type' id='type-id-131'/>
+ <typedef-decl name='gzFile' type-id='type-id-132' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1285' column='1' id='type-id-133'/>
+ <class-decl name='gzFile_s' size-in-bits='128' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1790' column='1' id='type-id-134'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1791' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='next' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1792' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pos' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1793' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-134' size-in-bits='32' id='type-id-132'/>
+ <pointer-type-def type-id='type-id-16' size-in-bits='32' id='type-id-135'/>
+ <function-decl name='zng_gzopen' mangled-name='zng_gzopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-44' name='path' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <parameter type-id='type-id-44' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='zng_gzdopen' mangled-name='zng_gzdopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzdopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-16' name='fd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <parameter type-id='type-id-44' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='zng_gzclose' mangled-name='zng_gzclose' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzbuffer' mangled-name='zng_gzbuffer' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzbuffer@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <parameter type-id='type-id-3' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzrewind' mangled-name='zng_gzrewind' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzrewind@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzseek' mangled-name='zng_gzseek' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzseek@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-9' name='offset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-16' name='whence' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gztell' mangled-name='zng_gztell' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gztell@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzoffset' mangled-name='zng_gzoffset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzoffset@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzeof' mangled-name='zng_gzeof' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzeof@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzerror' mangled-name='zng_gzerror' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzerror@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <parameter type-id='type-id-135' name='errnum' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <function-decl name='zng_gzclearerr' mangled-name='zng_gzclearerr' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclearerr@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_r' mangled-name='zng_gzclose_r' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1641' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose_r@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_w' mangled-name='zng_gzclose_w' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1643' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose_w@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='__open_2' filepath='/usr/arm-linux-gnueabihf/include/bits/fcntl2.h' line='26' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-44'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='__open_too_many_args' filepath='/usr/arm-linux-gnueabihf/include/bits/fcntl2.h' line='35' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='__open_missing_mode' filepath='/usr/arm-linux-gnueabihf/include/bits/fcntl2.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/arm-linux-gnueabihf/include/stdlib.h' line='540' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/arm-linux-gnueabihf/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-44'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/arm-linux-gnueabihf/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='__va_list' size-in-bits='32' is-struct='yes' visibility='default' id='type-id-136'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='__ap' type-id='type-id-46' visibility='default'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-136' filepath='/usr/lib/gcc-cross/arm-linux-gnueabihf/11/include/stdarg.h' line='40' column='1' id='type-id-137'/>
+ <typedef-decl name='va_list' type-id='type-id-137' filepath='/usr/lib/gcc-cross/arm-linux-gnueabihf/11/include/stdarg.h' line='99' column='1' id='type-id-138'/>
+ <function-decl name='zng_gzwrite' mangled-name='zng_gzwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzfwrite' mangled-name='zng_gzfwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzfwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-42' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-42' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_gzputc' mangled-name='zng_gzputc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzputc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <parameter type-id='type-id-16' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzputs' mangled-name='zng_gzputs' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzputs@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <parameter type-id='type-id-44' name='s' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzvprintf' mangled-name='zng_gzvprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzvprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-44' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-138' name='va' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzprintf' mangled-name='zng_gzprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter type-id='type-id-44' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzflush' mangled-name='zng_gzflush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzflush@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <parameter type-id='type-id-16' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzsetparams' mangled-name='zng_gzsetparams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzsetparams@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-16' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-16' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/arm-linux-gnueabihf/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-139'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-140' size-in-bits='61568' id='type-id-141'>
+ <subrange length='1924' type-id='type-id-3' id='type-id-142'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='4608' id='type-id-143'>
+ <subrange length='288' type-id='type-id-3' id='type-id-144'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='5120' id='type-id-145'>
+ <subrange length='320' type-id='type-id-3' id='type-id-146'/>
+ </array-type-def>
+ <enum-decl name='inflate_mode' naming-typedef-id='type-id-147' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='25' column='1' id='type-id-148'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='HEAD' value='16180'/>
+ <enumerator name='FLAGS' value='16181'/>
+ <enumerator name='TIME' value='16182'/>
+ <enumerator name='OS' value='16183'/>
+ <enumerator name='EXLEN' value='16184'/>
+ <enumerator name='EXTRA' value='16185'/>
+ <enumerator name='NAME' value='16186'/>
+ <enumerator name='COMMENT' value='16187'/>
+ <enumerator name='HCRC' value='16188'/>
+ <enumerator name='DICTID' value='16189'/>
+ <enumerator name='DICT' value='16190'/>
+ <enumerator name='TYPE' value='16191'/>
+ <enumerator name='TYPEDO' value='16192'/>
+ <enumerator name='STORED' value='16193'/>
+ <enumerator name='COPY_' value='16194'/>
+ <enumerator name='COPY' value='16195'/>
+ <enumerator name='TABLE' value='16196'/>
+ <enumerator name='LENLENS' value='16197'/>
+ <enumerator name='CODELENS' value='16198'/>
+ <enumerator name='LEN_' value='16199'/>
+ <enumerator name='LEN' value='16200'/>
+ <enumerator name='LENEXT' value='16201'/>
+ <enumerator name='DIST' value='16202'/>
+ <enumerator name='DISTEXT' value='16203'/>
+ <enumerator name='MATCH' value='16204'/>
+ <enumerator name='LIT' value='16205'/>
+ <enumerator name='CHECK' value='16206'/>
+ <enumerator name='LENGTH' value='16207'/>
+ <enumerator name='DONE' value='16208'/>
+ <enumerator name='BAD' value='16209'/>
+ <enumerator name='MEM' value='16210'/>
+ <enumerator name='SYNC' value='16211'/>
+ </enum-decl>
+ <typedef-decl name='inflate_mode' type-id='type-id-148' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='58' column='1' id='type-id-147'/>
+ <class-decl name='inflate_state' size-in-bits='72960' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='87' column='1' id='type-id-149'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='mode' type-id='type-id-147' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='last' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='90' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='wrap' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='havedict' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='flags' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='94' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='dmax' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='check' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='total' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='head' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='wbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='wsize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='whave' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='wnext' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='window' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='crc_fold' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='hold' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='length' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='offset' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='extra' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='lencode' type-id='type-id-150' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1248'>
+ <var-decl name='distcode' type-id='type-id-150' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='lenbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='distbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='ncode' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1376'>
+ <var-decl name='nlen' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='ndist' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='have' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='next' type-id='type-id-151' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='lens' type-id='type-id-145' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='6624'>
+ <var-decl name='work' type-id='type-id-143' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='11232'>
+ <var-decl name='codes' type-id='type-id-141' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72800'>
+ <var-decl name='sane' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72832'>
+ <var-decl name='back' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72864'>
+ <var-decl name='was' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72896'>
+ <var-decl name='chunksize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='134' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-140' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='27' column='1' id='type-id-152'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='30' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-152' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='31' column='1' id='type-id-140'/>
+ <enum-decl name='codetype' naming-typedef-id='type-id-153' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='57' column='1' id='type-id-154'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <typedef-decl name='codetype' type-id='type-id-154' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='61' column='1' id='type-id-153'/>
+ <typedef-decl name='in_func' type-id='type-id-155' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1075' column='1' id='type-id-156'/>
+ <typedef-decl name='out_func' type-id='type-id-157' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1076' column='1' id='type-id-158'/>
+ <pointer-type-def type-id='type-id-140' size-in-bits='32' id='type-id-151'/>
+ <pointer-type-def type-id='type-id-151' size-in-bits='32' id='type-id-159'/>
+ <qualified-type-def type-id='type-id-140' const='yes' id='type-id-160'/>
+ <pointer-type-def type-id='type-id-160' size-in-bits='32' id='type-id-150'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='32' id='type-id-161'/>
+ <pointer-type-def type-id='type-id-149' size-in-bits='32' id='type-id-162'/>
+ <pointer-type-def type-id='type-id-163' size-in-bits='32' id='type-id-157'/>
+ <pointer-type-def type-id='type-id-164' size-in-bits='32' id='type-id-155'/>
+ <pointer-type-def type-id='type-id-65' size-in-bits='32' id='type-id-165'/>
+ <pointer-type-def type-id='type-id-3' size-in-bits='32' id='type-id-166'/>
+ <function-decl name='zng_inflateBackInit' mangled-name='zng_inflateBackInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-43' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackInit_' mangled-name='zng_inflateBackInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-43' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBack' mangled-name='zng_inflateBack' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBack@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-156' name='in' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-46' name='in_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-158' name='out' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-46' name='out_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackEnd' mangled-name='zng_inflateBackEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_fixedtables' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='138' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-162'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_inflate_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='63' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-153'/>
+ <parameter type-id='type-id-165'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-159'/>
+ <parameter type-id='type-id-166'/>
+ <parameter type-id='type-id-165'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-163'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-34'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-164'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-161'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='32' id='type-id-167'/>
+ <function-decl name='zng_inflateResetKeep' mangled-name='zng_inflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset' mangled-name='zng_inflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset2' mangled-name='zng_inflateReset2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateReset2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2' mangled-name='zng_inflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit' mangled-name='zng_inflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit_' mangled-name='zng_inflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2_' mangled-name='zng_inflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflatePrime' mangled-name='zng_inflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflate' mangled-name='zng_inflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-34' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateEnd' mangled-name='zng_inflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetDictionary' mangled-name='zng_inflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-43' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-100' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSetDictionary' mangled-name='zng_inflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetHeader' mangled-name='zng_inflateGetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateGetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <parameter type-id='type-id-17' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSync' mangled-name='zng_inflateSync' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSync@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSyncPoint' mangled-name='zng_inflateSyncPoint' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSyncPoint@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateCopy' mangled-name='zng_inflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-14' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateUndermine' mangled-name='zng_inflateUndermine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateUndermine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <parameter type-id='type-id-34' name='subvert' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateValidate' mangled-name='zng_inflateValidate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateValidate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <parameter type-id='type-id-34' name='check' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateMark' mangled-name='zng_inflateMark' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateMark@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1'/>
+ <return type-id='type-id-167'/>
+ </function-decl>
+ <function-decl name='zng_inflateCodesUsed' mangled-name='zng_inflateCodesUsed' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateCodesUsed@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-168' size-in-bits='9216' id='type-id-169'>
+ <subrange length='288' type-id='type-id-3' id='type-id-144'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-168' size-in-bits='960' id='type-id-170'>
+ <subrange length='30' type-id='type-id-3' id='type-id-171'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-172' size-in-bits='928' id='type-id-173'>
+ <subrange length='29' type-id='type-id-3' id='type-id-174'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-172' size-in-bits='960' id='type-id-175'>
+ <subrange length='30' type-id='type-id-3' id='type-id-171'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='2048' id='type-id-176'>
+ <subrange length='256' type-id='type-id-3' id='type-id-177'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='4096' id='type-id-178'>
+ <subrange length='512' type-id='type-id-3' id='type-id-179'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-73' const='yes' id='type-id-168'/>
+ <qualified-type-def type-id='type-id-16' const='yes' id='type-id-172'/>
+ <var-decl name='static_ltree' type-id='type-id-169' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='14' column='1'/>
+ <var-decl name='static_dtree' type-id='type-id-170' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='15' column='1'/>
+ <var-decl name='zng_dist_code' type-id='type-id-178' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='17' column='1'/>
+ <var-decl name='zng_length_code' type-id='type-id-176' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='18' column='1'/>
+ <var-decl name='base_length' type-id='type-id-173' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='20' column='1'/>
+ <var-decl name='base_dist' type-id='type-id-175' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='21' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_uncompress2' mangled-name='zng_uncompress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_uncompress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-53' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_uncompress' mangled-name='zng_uncompress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_uncompress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-180' size-in-bits='320' id='type-id-181'>
+ <subrange length='10' type-id='type-id-3' id='type-id-182'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-51' size-in-bits='304' id='type-id-183'>
+ <subrange length='38' type-id='type-id-3' id='type-id-184'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-44' const='yes' id='type-id-180'/>
+ <pointer-type-def type-id='type-id-46' size-in-bits='32' id='type-id-185'/>
+ <var-decl name='zng_vstring' type-id='type-id-183' mangled-name='zng_vstring' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='23' column='1' elf-symbol-id='zng_vstring@@ZLIB_NG_2.0.0'/>
+ <function-decl name='zlibng_version' mangled-name='zlibng_version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='31' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibng_version@@ZLIB_NG_2.1.0'>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <function-decl name='zng_zlibCompileFlags' mangled-name='zng_zlibCompileFlags' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='36' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_zlibCompileFlags@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ <function-decl name='zng_zError' mangled-name='zng_zError' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_zError@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='err' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1'/>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <var-decl name='zng_z_errmsg' type-id='type-id-181' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='24' column='1'/>
+ <function-decl name='free' filepath='/usr/arm-linux-gnueabihf/include/stdlib.h' line='555' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='posix_memalign' filepath='/usr/arm-linux-gnueabihf/include/stdlib.h' line='586' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-185'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/arm/arm_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/arm' language='LANG_C11'>
+ <function-decl name='getauxval' filepath='/usr/arm-linux-gnueabihf/include/sys/auxv.h' line='31' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-31'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1344' is-struct='yes' naming-typedef-id='type-id-186' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='102' column='1' id='type-id-187'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-134' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='mode' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='fd' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='path' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='want' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='in' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='out' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='direct' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='how' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='start' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='eof' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='past' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='level' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='strategy' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='reset' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='skip' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='seek' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='err' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='msg' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strm' type-id='type-id-47' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='133' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gz_state' type-id='type-id-187' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='134' column='1' id='type-id-186'/>
+ <typedef-decl name='__ssize_t' type-id='type-id-16' filepath='/usr/arm-linux-gnueabihf/include/bits/types.h' line='194' column='1' id='type-id-188'/>
+ <typedef-decl name='ssize_t' type-id='type-id-188' filepath='/usr/arm-linux-gnueabihf/include/stdio.h' line='77' column='1' id='type-id-139'/>
+ <pointer-type-def type-id='type-id-186' size-in-bits='32' id='type-id-189'/>
+ <function-decl name='zng_gzread' mangled-name='zng_gzread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzfread' mangled-name='zng_gzfread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzfread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-42' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-42' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_gzgetc' mangled-name='zng_gzgetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzgetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzungetc' mangled-name='zng_gzungetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzungetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-16' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzgets' mangled-name='zng_gzgets' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzgets@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-32' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-16' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='zng_gzdirect' mangled-name='zng_gzdirect' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzdirect@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='138' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-189'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-44'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='__read_chk' filepath='/usr/arm-linux-gnueabihf/include/bits/unistd.h' line='23' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-139'/>
+ </function-decl>
+ <function-decl name='__errno_location' filepath='/usr/arm-linux-gnueabihf/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-135'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/arm-linux-gnueabihf/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/arm-linux-gnueabihf/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/arm-linux-gnueabihf/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-mips-unknown-linux-gnu.abi b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-mips-unknown-linux-gnu.abi
new file mode 100644
index 0000000000..53e2b06b58
--- /dev/null
+++ b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-mips-unknown-linux-gnu.abi
@@ -0,0 +1,1241 @@
+<abi-corpus version='2.0' path='btmp1/libz-ng.so.2.1.0.devel' architecture='elf-mips-r3000-be' soname='libz-ng.so.2'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld.so.1'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='zlibng_version' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compressBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_gen' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_op' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePending' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateTune' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_get_crc_table' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzbuffer' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclearerr' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_r' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_w' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdirect' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzeof' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzerror' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzflush' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgets' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzoffset' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputs' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzrewind' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzseek' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzsetparams' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gztell' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzungetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzvprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBack' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCodesUsed' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateMark' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSync' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSyncPoint' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateUndermine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateValidate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zError' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zlibCompileFlags' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <elf-variable-symbols>
+ <elf-symbol name='zng_vstring' size='38' version='ZLIB_NG_2.0.0' is-default-version='yes' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-variable-symbols>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <typedef-decl name='uint32_t' type-id='type-id-4' filepath='/usr/mips-linux-gnu/include/bits/stdint-uintn.h' line='26' column='1' id='type-id-5'/>
+ <typedef-decl name='__uint32_t' type-id='type-id-3' filepath='/usr/mips-linux-gnu/include/bits/types.h' line='42' column='1' id='type-id-4'/>
+ <typedef-decl name='__int64_t' type-id='type-id-1' filepath='/usr/mips-linux-gnu/include/bits/types.h' line='47' column='1' id='type-id-6'/>
+ <typedef-decl name='__off64_t' type-id='type-id-6' filepath='/usr/mips-linux-gnu/include/bits/types.h' line='153' column='1' id='type-id-7'/>
+ <typedef-decl name='off64_t' type-id='type-id-7' filepath='/usr/mips-linux-gnu/include/sys/types.h' line='92' column='1' id='type-id-8'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-9'/>
+ <pointer-type-def type-id='type-id-9' size-in-bits='32' id='type-id-10'/>
+ <function-decl name='zng_adler32' mangled-name='zng_adler32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_adler32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-5' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-10' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-5' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_adler32_combine' mangled-name='zng_adler32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_adler32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-5' name='adler1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-5' name='adler2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='int' size-in-bits='32' id='type-id-11'/>
+ <typedef-decl name='size_t' type-id='type-id-3' filepath='/usr/lib/gcc-cross/mips-linux-gnu/10/include/stddef.h' line='209' column='1' id='type-id-12'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='32' id='type-id-13'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='32' id='type-id-14'/>
+ <function-decl name='zng_compress2' mangled-name='zng_compress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-13' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-10' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-12' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <parameter type-id='type-id-11' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_compress' mangled-name='zng_compress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-13' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-10' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-12' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_compressBound' mangled-name='zng_compressBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compressBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-12' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <qualified-type-def type-id='type-id-5' const='yes' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-15' size-in-bits='32' id='type-id-16'/>
+ <function-decl name='zng_get_crc_table' mangled-name='zng_get_crc_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='18' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_get_crc_table@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_crc32' mangled-name='zng_crc32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-5' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-10' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-5' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <function-decl name='zng_crc32_combine' mangled-name='zng_crc32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-5' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-5' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_gen' mangled-name='zng_crc32_combine_gen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine_gen@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_op' mangled-name='zng_crc32_combine_op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine_op@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-5' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-5' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-15' name='op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='void' id='type-id-17'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='char' size-in-bits='8' id='type-id-18'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-19'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='1248' id='type-id-21'>
+ <subrange length='39' type-id='type-id-3' id='type-id-22'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-23'>
+ <subrange length='573' type-id='type-id-3' id='type-id-24'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='1952' id='type-id-25'>
+ <subrange length='61' type-id='type-id-3' id='type-id-26'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-27' size-in-bits='352' id='type-id-28'>
+ <subrange length='11' type-id='type-id-3' id='type-id-29'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-11' size-in-bits='18336' id='type-id-30'>
+ <subrange length='573' type-id='type-id-3' id='type-id-24'/>
+ </array-type-def>
+ <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-31'/>
+ <array-type-def dimensions='1' type-id='type-id-32' size-in-bits='256' id='type-id-33'>
+ <subrange length='16' type-id='type-id-3' id='type-id-34'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-35' size-in-bits='512' id='type-id-36'>
+ <subrange length='64' type-id='type-id-3' id='type-id-37'/>
+ </array-type-def>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-38'/>
+ <array-type-def dimensions='1' type-id='type-id-2' size-in-bits='4584' id='type-id-39'>
+ <subrange length='573' type-id='type-id-3' id='type-id-24'/>
+ </array-type-def>
+ <type-decl name='unsigned long int' size-in-bits='32' id='type-id-40'/>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-41'/>
+ <typedef-decl name='zng_stream' type-id='type-id-42' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='100' column='1' id='type-id-43'/>
+ <class-decl name='crc32_fold_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='11' column='1' id='type-id-44'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fold' type-id='type-id-36' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='12' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='value' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='13' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='77' column='1' id='type-id-20'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='81' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='85' column='1'/>
+ </data-member>
+ </class-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='78' column='1' id='type-id-45'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='79' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='80' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='82' column='1' id='type-id-46'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='83' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='84' column='1'/>
+ </data-member>
+ </union-decl>
+ <typedef-decl name='ct_data' type-id='type-id-20' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='86' column='1' id='type-id-47'/>
+ <typedef-decl name='static_tree_desc' type-id='type-id-19' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='93' column='1' id='type-id-48'/>
+ <class-decl name='tree_desc_s' size-in-bits='96' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='95' column='1' id='type-id-49'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-50' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='max_code' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='stat_desc' type-id='type-id-51' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='98' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='Pos' type-id='type-id-32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='101' column='1' id='type-id-52'/>
+ <typedef-decl name='deflate_state' type-id='type-id-53' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='107' column='1' id='type-id-54'/>
+ <typedef-decl name='update_hash_cb' type-id='type-id-55' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='109' column='1' id='type-id-56'/>
+ <typedef-decl name='insert_string_cb' type-id='type-id-57' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='110' column='1' id='type-id-58'/>
+ <typedef-decl name='quick_insert_string_cb' type-id='type-id-59' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='111' column='1' id='type-id-60'/>
+ <class-decl name='internal_state' size-in-bits='47744' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='113' column='1' id='type-id-53'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-61' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='pending_buf' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_out' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='pending_buf_size' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='wrap' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='gzindex' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='gzhead' type-id='type-id-62' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='status' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='last_flush' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='reproducible' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='block_open' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='w_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='w_bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='w_mask' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='lookahead' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='high_water' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='window_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='window' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='150' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='prev' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='head' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='ins_h' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='168' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='block_start' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='170' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='match_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='175' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='prev_match' type-id='type-id-52' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='176' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='match_available' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='strstart' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='match_start' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='prev_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='max_chain_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='max_lazy_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='update_hash' type-id='type-id-56' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='201' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='insert_string' type-id='type-id-58' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='quick_insert_string' type-id='type-id-60' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='level' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='207' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='strategy' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='208' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='good_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='nice_match' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='213' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='crc_fold' type-id='type-id-44' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='215' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1824'>
+ <var-decl name='dyn_ltree' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='219' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20160'>
+ <var-decl name='dyn_dtree' type-id='type-id-25' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22112'>
+ <var-decl name='bl_tree' type-id='type-id-21' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='221' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23360'>
+ <var-decl name='l_desc' type-id='type-id-49' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='223' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23456'>
+ <var-decl name='d_desc' type-id='type-id-49' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='224' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23552'>
+ <var-decl name='bl_desc' type-id='type-id-49' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='225' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23648'>
+ <var-decl name='bl_count' type-id='type-id-33' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='227' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23904'>
+ <var-decl name='heap' type-id='type-id-30' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='230' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42240'>
+ <var-decl name='heap_len' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='231' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42272'>
+ <var-decl name='heap_max' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='232' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42304'>
+ <var-decl name='depth' type-id='type-id-39' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='237' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46912'>
+ <var-decl name='lit_bufsize' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='241' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46944'>
+ <var-decl name='sym_buf' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='261' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46976'>
+ <var-decl name='sym_next' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='262' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47008'>
+ <var-decl name='sym_end' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='263' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47040'>
+ <var-decl name='opt_len' type-id='type-id-40' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='265' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47072'>
+ <var-decl name='static_len' type-id='type-id-40' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='266' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47104'>
+ <var-decl name='matches' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='267' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47136'>
+ <var-decl name='insert' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='268' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47168'>
+ <var-decl name='compressed_len' type-id='type-id-40' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='271' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47200'>
+ <var-decl name='bits_sent' type-id='type-id-40' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='272' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47232'>
+ <var-decl name='reserved_p' type-id='type-id-64' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='275' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47296'>
+ <var-decl name='bi_buf' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='277' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47360'>
+ <var-decl name='bi_valid' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='280' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47392'>
+ <var-decl name='reserved' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='284' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='alloc_func' type-id='type-id-66' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='93' column='1' id='type-id-67'/>
+ <typedef-decl name='free_func' type-id='type-id-68' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='94' column='1' id='type-id-69'/>
+ <class-decl name='zng_stream_s' size-in-bits='448' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='98' column='1' id='type-id-42'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-70' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='avail_in' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='total_in' type-id='type-id-12' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='next_out' type-id='type-id-71' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='avail_out' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='total_out' type-id='type-id-12' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='msg' type-id='type-id-72' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='state' type-id='type-id-73' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='zalloc' type-id='type-id-67' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='zfree' type-id='type-id-69' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='opaque' type-id='type-id-74' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='data_type' type-id='type-id-11' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='adler' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='reserved' type-id='type-id-40' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='117' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='zng_gz_header_s' size-in-bits='416' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='126' column='1' id='type-id-75'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='time' type-id='type-id-40' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='xflags' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='os' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='extra' type-id='type-id-71' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='extra_len' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra_max' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='name' type-id='type-id-71' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='name_max' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='comment' type-id='type-id-71' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='comm_max' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='137' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='hcrc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='done' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='139' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_gz_header' type-id='type-id-75' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='140' column='1' id='type-id-76'/>
+ <typedef-decl name='zng_gz_headerp' type-id='type-id-77' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='142' column='1' id='type-id-62'/>
+ <enum-decl name='zng_deflate_param' naming-typedef-id='type-id-78' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1800' column='1' id='type-id-79'>
+ <underlying-type type-id='type-id-38'/>
+ <enumerator name='Z_DEFLATE_LEVEL' value='0'/>
+ <enumerator name='Z_DEFLATE_STRATEGY' value='1'/>
+ <enumerator name='Z_DEFLATE_REPRODUCIBLE' value='2'/>
+ </enum-decl>
+ <typedef-decl name='zng_deflate_param' type-id='type-id-79' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1810' column='1' id='type-id-78'/>
+ <class-decl name='zng_deflate_param_value' size-in-bits='128' is-struct='yes' naming-typedef-id='type-id-80' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1812' column='1' id='type-id-81'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='param' type-id='type-id-78' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1813' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='buf' type-id='type-id-74' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1814' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='size' type-id='type-id-12' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1815' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='status' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1816' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_deflate_param_value' type-id='type-id-81' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1817' column='1' id='type-id-80'/>
+ <typedef-decl name='int32_t' type-id='type-id-82' filepath='/usr/mips-linux-gnu/include/bits/stdint-intn.h' line='26' column='1' id='type-id-27'/>
+ <typedef-decl name='uint8_t' type-id='type-id-83' filepath='/usr/mips-linux-gnu/include/bits/stdint-uintn.h' line='24' column='1' id='type-id-35'/>
+ <typedef-decl name='uint16_t' type-id='type-id-84' filepath='/usr/mips-linux-gnu/include/bits/stdint-uintn.h' line='25' column='1' id='type-id-32'/>
+ <typedef-decl name='uint64_t' type-id='type-id-85' filepath='/usr/mips-linux-gnu/include/bits/stdint-uintn.h' line='27' column='1' id='type-id-65'/>
+ <typedef-decl name='__uint8_t' type-id='type-id-2' filepath='/usr/mips-linux-gnu/include/bits/types.h' line='38' column='1' id='type-id-83'/>
+ <typedef-decl name='__uint16_t' type-id='type-id-41' filepath='/usr/mips-linux-gnu/include/bits/types.h' line='40' column='1' id='type-id-84'/>
+ <typedef-decl name='__int32_t' type-id='type-id-11' filepath='/usr/mips-linux-gnu/include/bits/types.h' line='41' column='1' id='type-id-82'/>
+ <typedef-decl name='__uint64_t' type-id='type-id-31' filepath='/usr/mips-linux-gnu/include/bits/types.h' line='48' column='1' id='type-id-85'/>
+ <pointer-type-def type-id='type-id-52' size-in-bits='32' id='type-id-63'/>
+ <pointer-type-def type-id='type-id-18' size-in-bits='32' id='type-id-64'/>
+ <qualified-type-def type-id='type-id-18' const='yes' id='type-id-86'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='32' id='type-id-72'/>
+ <qualified-type-def type-id='type-id-48' const='yes' id='type-id-87'/>
+ <pointer-type-def type-id='type-id-87' size-in-bits='32' id='type-id-51'/>
+ <qualified-type-def type-id='type-id-35' const='yes' id='type-id-88'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='32' id='type-id-70'/>
+ <pointer-type-def type-id='type-id-47' size-in-bits='32' id='type-id-50'/>
+ <pointer-type-def type-id='type-id-54' size-in-bits='32' id='type-id-89'/>
+ <qualified-type-def type-id='type-id-89' const='yes' id='type-id-90'/>
+ <pointer-type-def type-id='type-id-27' size-in-bits='32' id='type-id-91'/>
+ <pointer-type-def type-id='type-id-53' size-in-bits='32' id='type-id-73'/>
+ <pointer-type-def type-id='type-id-92' size-in-bits='32' id='type-id-59'/>
+ <pointer-type-def type-id='type-id-93' size-in-bits='32' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-5' size-in-bits='32' id='type-id-94'/>
+ <pointer-type-def type-id='type-id-35' size-in-bits='32' id='type-id-71'/>
+ <pointer-type-def type-id='type-id-95' size-in-bits='32' id='type-id-57'/>
+ <pointer-type-def type-id='type-id-96' size-in-bits='32' id='type-id-68'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='32' id='type-id-74'/>
+ <pointer-type-def type-id='type-id-97' size-in-bits='32' id='type-id-66'/>
+ <pointer-type-def type-id='type-id-80' size-in-bits='32' id='type-id-98'/>
+ <pointer-type-def type-id='type-id-76' size-in-bits='32' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-43' size-in-bits='32' id='type-id-61'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-19'/>
+ <function-decl name='zng_deflateInit2' mangled-name='zng_deflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <parameter type-id='type-id-27' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit' mangled-name='zng_deflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='323' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='323' column='1'/>
+ <parameter type-id='type-id-27' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='323' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit_' mangled-name='zng_deflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-27' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-72' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-27' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2_' mangled-name='zng_deflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-27' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-27' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-27' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-27' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-72' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-27' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetDictionary' mangled-name='zng_deflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-70' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-5' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetDictionary' mangled-name='zng_deflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-71' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-94' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateResetKeep' mangled-name='zng_deflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateReset' mangled-name='zng_deflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetHeader' mangled-name='zng_deflateSetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <parameter type-id='type-id-62' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflatePending' mangled-name='zng_deflatePending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflatePending@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-94' name='pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-91' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflatePrime' mangled-name='zng_deflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-27' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-27' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateParams' mangled-name='zng_deflateParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-27' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-27' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateTune' mangled-name='zng_deflateTune' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateTune@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-27' name='good_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-27' name='max_lazy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-27' name='nice_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-27' name='max_chain' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateBound' mangled-name='zng_deflateBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <parameter type-id='type-id-40' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <return type-id='type-id-40'/>
+ </function-decl>
+ <function-decl name='zng_deflate' mangled-name='zng_deflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='725' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='725' column='1'/>
+ <parameter type-id='type-id-27' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='725' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateEnd' mangled-name='zng_deflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1022' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1022' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateCopy' mangled-name='zng_deflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <parameter type-id='type-id-61' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetParams' mangled-name='zng_deflateSetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-98' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-12' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetParams' mangled-name='zng_deflateGetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateGetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-98' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-12' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-92'>
+ <parameter type-id='type-id-90'/>
+ <parameter type-id='type-id-5'/>
+ <return type-id='type-id-52'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-93'>
+ <parameter type-id='type-id-90'/>
+ <parameter type-id='type-id-5'/>
+ <parameter type-id='type-id-5'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-95'>
+ <parameter type-id='type-id-90'/>
+ <parameter type-id='type-id-5'/>
+ <parameter type-id='type-id-5'/>
+ <return type-id='type-id-17'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-96'>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-74'/>
+ <return type-id='type-id-17'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-97'>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-74'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <class-decl name='functable_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='19' column='1' id='type-id-99'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='adler32' type-id='type-id-100' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='adler32_fold_copy' type-id='type-id-101' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='crc32' type-id='type-id-100' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='crc32_fold_reset' type-id='type-id-102' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='crc32_fold_copy' type-id='type-id-103' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='crc32_fold' type-id='type-id-104' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='crc32_fold_final' type-id='type-id-102' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='compare256' type-id='type-id-105' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='chunksize' type-id='type-id-106' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='chunkmemset_safe' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='inflate_fast' type-id='type-id-108' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='insert_string' type-id='type-id-57' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='longest_match' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='32' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='longest_match_slow' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='quick_insert_string' type-id='type-id-59' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='slide_hash' type-id='type-id-110' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='update_hash' type-id='type-id-55' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='36' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-44' size-in-bits='32' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-112' size-in-bits='32' id='type-id-106'/>
+ <pointer-type-def type-id='type-id-113' size-in-bits='32' id='type-id-105'/>
+ <pointer-type-def type-id='type-id-114' size-in-bits='32' id='type-id-102'/>
+ <pointer-type-def type-id='type-id-115' size-in-bits='32' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-116' size-in-bits='32' id='type-id-100'/>
+ <pointer-type-def type-id='type-id-117' size-in-bits='32' id='type-id-101'/>
+ <pointer-type-def type-id='type-id-118' size-in-bits='32' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-119' size-in-bits='32' id='type-id-104'/>
+ <pointer-type-def type-id='type-id-120' size-in-bits='32' id='type-id-103'/>
+ <pointer-type-def type-id='type-id-121' size-in-bits='32' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-122' size-in-bits='32' id='type-id-108'/>
+ <var-decl name='functable' type-id='type-id-99' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='39' column='1'/>
+ <function-type size-in-bits='32' id='type-id-112'>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-113'>
+ <parameter type-id='type-id-70'/>
+ <parameter type-id='type-id-70'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-114'>
+ <parameter type-id='type-id-111'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-115'>
+ <parameter type-id='type-id-90'/>
+ <parameter type-id='type-id-52'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-116'>
+ <parameter type-id='type-id-5'/>
+ <parameter type-id='type-id-70'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-117'>
+ <parameter type-id='type-id-5'/>
+ <parameter type-id='type-id-71'/>
+ <parameter type-id='type-id-70'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-118'>
+ <parameter type-id='type-id-71'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-71'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-119'>
+ <parameter type-id='type-id-111'/>
+ <parameter type-id='type-id-70'/>
+ <parameter type-id='type-id-12'/>
+ <parameter type-id='type-id-5'/>
+ <return type-id='type-id-17'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-120'>
+ <parameter type-id='type-id-111'/>
+ <parameter type-id='type-id-71'/>
+ <parameter type-id='type-id-70'/>
+ <parameter type-id='type-id-12'/>
+ <return type-id='type-id-17'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-121'>
+ <parameter type-id='type-id-89'/>
+ <return type-id='type-id-17'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-122'>
+ <parameter type-id='type-id-61'/>
+ <parameter type-id='type-id-5'/>
+ <return type-id='type-id-17'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <typedef-decl name='gzFile' type-id='type-id-123' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1285' column='1' id='type-id-124'/>
+ <class-decl name='gzFile_s' size-in-bits='128' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1790' column='1' id='type-id-125'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1791' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='next' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1792' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pos' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1793' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-125' size-in-bits='32' id='type-id-123'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='32' id='type-id-126'/>
+ <function-decl name='zng_gzopen' mangled-name='zng_gzopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-72' name='path' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <parameter type-id='type-id-72' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <return type-id='type-id-124'/>
+ </function-decl>
+ <function-decl name='zng_gzdopen' mangled-name='zng_gzdopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzdopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-11' name='fd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <parameter type-id='type-id-72' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <return type-id='type-id-124'/>
+ </function-decl>
+ <function-decl name='zng_gzclose' mangled-name='zng_gzclose' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzbuffer' mangled-name='zng_gzbuffer' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzbuffer@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <parameter type-id='type-id-3' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzrewind' mangled-name='zng_gzrewind' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzrewind@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzseek' mangled-name='zng_gzseek' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzseek@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-11' name='whence' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_gztell' mangled-name='zng_gztell' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gztell@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_gzoffset' mangled-name='zng_gzoffset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzoffset@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_gzeof' mangled-name='zng_gzeof' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzeof@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzerror' mangled-name='zng_gzerror' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzerror@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <parameter type-id='type-id-126' name='errnum' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <return type-id='type-id-72'/>
+ </function-decl>
+ <function-decl name='zng_gzclearerr' mangled-name='zng_gzclearerr' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclearerr@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='variadic parameter type' id='type-id-127'/>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-74' filepath='/usr/lib/gcc-cross/mips-linux-gnu/10/include/stdarg.h' line='40' column='1' id='type-id-128'/>
+ <typedef-decl name='va_list' type-id='type-id-128' filepath='/usr/lib/gcc-cross/mips-linux-gnu/10/include/stdarg.h' line='99' column='1' id='type-id-129'/>
+ <function-decl name='zng_gzwrite' mangled-name='zng_gzwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-74' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzfwrite' mangled-name='zng_gzfwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzfwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-74' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-12' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-12' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_gzputc' mangled-name='zng_gzputc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzputc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <parameter type-id='type-id-11' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzputs' mangled-name='zng_gzputs' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzputs@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <parameter type-id='type-id-72' name='s' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzvprintf' mangled-name='zng_gzvprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzvprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-72' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-129' name='va' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzprintf' mangled-name='zng_gzprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter type-id='type-id-72' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzflush' mangled-name='zng_gzflush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzflush@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <parameter type-id='type-id-11' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzsetparams' mangled-name='zng_gzsetparams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzsetparams@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-11' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-11' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_w' mangled-name='zng_gzclose_w' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='490' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose_w@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='490' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <typedef-decl name='in_func' type-id='type-id-130' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1075' column='1' id='type-id-131'/>
+ <typedef-decl name='out_func' type-id='type-id-132' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1076' column='1' id='type-id-133'/>
+ <pointer-type-def type-id='type-id-70' size-in-bits='32' id='type-id-134'/>
+ <pointer-type-def type-id='type-id-135' size-in-bits='32' id='type-id-132'/>
+ <pointer-type-def type-id='type-id-136' size-in-bits='32' id='type-id-130'/>
+ <function-decl name='zng_inflateBackInit' mangled-name='zng_inflateBackInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-71' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackInit_' mangled-name='zng_inflateBackInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-71' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-72' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <parameter type-id='type-id-27' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateBack' mangled-name='zng_inflateBack' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBack@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-131' name='in' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-74' name='in_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-133' name='out' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-74' name='out_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackEnd' mangled-name='zng_inflateBackEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-135'>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-71'/>
+ <parameter type-id='type-id-5'/>
+ <return type-id='type-id-27'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-136'>
+ <parameter type-id='type-id-74'/>
+ <parameter type-id='type-id-134'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='long int' size-in-bits='32' id='type-id-137'/>
+ <function-decl name='zng_inflateResetKeep' mangled-name='zng_inflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset' mangled-name='zng_inflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset2' mangled-name='zng_inflateReset2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateReset2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2' mangled-name='zng_inflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit' mangled-name='zng_inflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit_' mangled-name='zng_inflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-72' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-27' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2_' mangled-name='zng_inflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-72' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-27' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflatePrime' mangled-name='zng_inflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflate' mangled-name='zng_inflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-27' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateEnd' mangled-name='zng_inflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetDictionary' mangled-name='zng_inflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-71' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-94' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateSetDictionary' mangled-name='zng_inflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-70' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-5' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetHeader' mangled-name='zng_inflateGetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateGetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <parameter type-id='type-id-62' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateSync' mangled-name='zng_inflateSync' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSync@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateSyncPoint' mangled-name='zng_inflateSyncPoint' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSyncPoint@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateCopy' mangled-name='zng_inflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-61' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateUndermine' mangled-name='zng_inflateUndermine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateUndermine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <parameter type-id='type-id-27' name='subvert' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateValidate' mangled-name='zng_inflateValidate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateValidate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <parameter type-id='type-id-27' name='check' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateMark' mangled-name='zng_inflateMark' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateMark@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1'/>
+ <return type-id='type-id-137'/>
+ </function-decl>
+ <function-decl name='zng_inflateCodesUsed' mangled-name='zng_inflateCodesUsed' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateCodesUsed@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-61' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1'/>
+ <return type-id='type-id-40'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <array-type-def dimensions='1' type-id='type-id-138' size-in-bits='9216' id='type-id-139'>
+ <subrange length='288' type-id='type-id-3' id='type-id-140'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-138' size-in-bits='960' id='type-id-141'>
+ <subrange length='30' type-id='type-id-3' id='type-id-142'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-143' size-in-bits='928' id='type-id-144'>
+ <subrange length='29' type-id='type-id-3' id='type-id-145'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-143' size-in-bits='960' id='type-id-146'>
+ <subrange length='30' type-id='type-id-3' id='type-id-142'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-9' size-in-bits='2048' id='type-id-147'>
+ <subrange length='256' type-id='type-id-3' id='type-id-148'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-9' size-in-bits='4096' id='type-id-149'>
+ <subrange length='512' type-id='type-id-3' id='type-id-150'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-47' const='yes' id='type-id-138'/>
+ <qualified-type-def type-id='type-id-11' const='yes' id='type-id-143'/>
+ <var-decl name='static_ltree' type-id='type-id-139' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='14' column='1'/>
+ <var-decl name='static_dtree' type-id='type-id-141' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='15' column='1'/>
+ <var-decl name='zng_dist_code' type-id='type-id-149' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='17' column='1'/>
+ <var-decl name='zng_length_code' type-id='type-id-147' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='18' column='1'/>
+ <var-decl name='base_length' type-id='type-id-144' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='20' column='1'/>
+ <var-decl name='base_dist' type-id='type-id-146' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='21' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <function-decl name='zng_uncompress2' mangled-name='zng_uncompress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_uncompress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-10' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-13' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_uncompress' mangled-name='zng_uncompress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_uncompress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-13' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-10' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-12' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <array-type-def dimensions='1' type-id='type-id-151' size-in-bits='320' id='type-id-152'>
+ <subrange length='10' type-id='type-id-3' id='type-id-153'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-86' size-in-bits='304' id='type-id-154'>
+ <subrange length='38' type-id='type-id-3' id='type-id-155'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-72' const='yes' id='type-id-151'/>
+ <var-decl name='zng_vstring' type-id='type-id-154' mangled-name='zng_vstring' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='23' column='1' elf-symbol-id='zng_vstring@@ZLIB_NG_2.0.0'/>
+ <function-decl name='zlibng_version' mangled-name='zlibng_version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='31' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibng_version@@ZLIB_NG_2.1.0'>
+ <return type-id='type-id-72'/>
+ </function-decl>
+ <function-decl name='zng_zlibCompileFlags' mangled-name='zng_zlibCompileFlags' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='36' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_zlibCompileFlags@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-40'/>
+ </function-decl>
+ <function-decl name='zng_zError' mangled-name='zng_zError' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_zError@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-11' name='err' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1'/>
+ <return type-id='type-id-72'/>
+ </function-decl>
+ <var-decl name='zng_z_errmsg' type-id='type-id-152' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='24' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <function-decl name='zng_gzread' mangled-name='zng_gzread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-74' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzfread' mangled-name='zng_gzfread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzfread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-74' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-12' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-12' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_gzgetc' mangled-name='zng_gzgetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzgetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzungetc' mangled-name='zng_gzungetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzungetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-11' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzgets' mangled-name='zng_gzgets' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzgets@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-64' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-11' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <return type-id='type-id-64'/>
+ </function-decl>
+ <function-decl name='zng_gzdirect' mangled-name='zng_gzdirect' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzdirect@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_r' mangled-name='zng_gzclose_r' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='576' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose_r@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-124' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='576' column='1'/>
+ <return type-id='type-id-11'/>
+ </function-decl>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-mips64-unknown-linux-gnuabi64.abi b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-mips64-unknown-linux-gnuabi64.abi
new file mode 100644
index 0000000000..3e4322f455
--- /dev/null
+++ b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-mips64-unknown-linux-gnuabi64.abi
@@ -0,0 +1,1250 @@
+<abi-corpus version='2.0' path='btmp1/libz-ng.so.2.1.0.devel' architecture='elf-mips-r3000-be' soname='libz-ng.so.2'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld.so.1'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='zlibng_version' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compressBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_gen' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_op' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePending' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateTune' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_get_crc_table' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzbuffer' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclearerr' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_r' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_w' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdirect' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzeof' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzerror' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzflush' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgets' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzoffset' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputs' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzrewind' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzseek' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzsetparams' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gztell' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzungetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzvprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBack' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCodesUsed' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateMark' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSync' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSyncPoint' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateUndermine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateValidate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zError' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zlibCompileFlags' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <elf-variable-symbols>
+ <elf-symbol name='zng_vstring' size='38' version='ZLIB_NG_2.0.0' is-default-version='yes' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-variable-symbols>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-4'/>
+ <typedef-decl name='size_t' type-id='type-id-4' filepath='/usr/lib/gcc-cross/mips64-linux-gnuabi64/10/include/stddef.h' line='209' column='1' id='type-id-5'/>
+ <typedef-decl name='uint32_t' type-id='type-id-6' filepath='/usr/mips64-linux-gnuabi64/include/bits/stdint-uintn.h' line='26' column='1' id='type-id-7'/>
+ <typedef-decl name='__uint32_t' type-id='type-id-3' filepath='/usr/mips64-linux-gnuabi64/include/bits/types.h' line='42' column='1' id='type-id-6'/>
+ <typedef-decl name='__off64_t' type-id='type-id-1' filepath='/usr/mips64-linux-gnuabi64/include/bits/types.h' line='153' column='1' id='type-id-8'/>
+ <typedef-decl name='off64_t' type-id='type-id-8' filepath='/usr/mips64-linux-gnuabi64/include/sys/types.h' line='92' column='1' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-10'/>
+ <pointer-type-def type-id='type-id-10' size-in-bits='64' id='type-id-11'/>
+ <function-decl name='zng_adler32_z' mangled-name='zng_adler32_z' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32_z@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-7' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <parameter type-id='type-id-5' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='zng_adler32' mangled-name='zng_adler32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-7' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-7' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='zng_adler32_combine' mangled-name='zng_adler32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-7' name='adler1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-7' name='adler2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='void' id='type-id-12'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='int' size-in-bits='32' id='type-id-13'/>
+ <pointer-type-def type-id='type-id-5' size-in-bits='64' id='type-id-14'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-15'/>
+ <function-decl name='zng_compress2' mangled-name='zng_compress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-14' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-5' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <parameter type-id='type-id-13' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_compress' mangled-name='zng_compress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-14' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-5' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_compressBound' mangled-name='zng_compressBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compressBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-5' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <qualified-type-def type-id='type-id-7' const='yes' id='type-id-16'/>
+ <pointer-type-def type-id='type-id-16' size-in-bits='64' id='type-id-17'/>
+ <function-decl name='zng_get_crc_table' mangled-name='zng_get_crc_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='18' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_get_crc_table@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_crc32_z' mangled-name='zng_crc32_z' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_z@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-7' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <parameter type-id='type-id-5' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='zng_crc32' mangled-name='zng_crc32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-7' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-7' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <function-decl name='zng_crc32_combine' mangled-name='zng_crc32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-7' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-7' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_gen' mangled-name='zng_crc32_combine_gen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine_gen@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_op' mangled-name='zng_crc32_combine_op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine_op@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-7' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-7' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-16' name='op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='char' size-in-bits='8' id='type-id-18'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-19'/>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='1248' id='type-id-21'>
+ <subrange length='39' type-id='type-id-4' id='type-id-22'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='18336' id='type-id-23'>
+ <subrange length='573' type-id='type-id-4' id='type-id-24'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-20' size-in-bits='1952' id='type-id-25'>
+ <subrange length='61' type-id='type-id-4' id='type-id-26'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-27' size-in-bits='352' id='type-id-28'>
+ <subrange length='11' type-id='type-id-4' id='type-id-29'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-13' size-in-bits='18336' id='type-id-30'>
+ <subrange length='573' type-id='type-id-4' id='type-id-24'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-31' size-in-bits='256' id='type-id-32'>
+ <subrange length='16' type-id='type-id-4' id='type-id-33'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-34' size-in-bits='512' id='type-id-35'>
+ <subrange length='64' type-id='type-id-4' id='type-id-36'/>
+ </array-type-def>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-37'/>
+ <array-type-def dimensions='1' type-id='type-id-2' size-in-bits='4584' id='type-id-38'>
+ <subrange length='573' type-id='type-id-4' id='type-id-24'/>
+ </array-type-def>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-39'/>
+ <typedef-decl name='zng_stream' type-id='type-id-40' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='100' column='1' id='type-id-41'/>
+ <class-decl name='crc32_fold_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='11' column='1' id='type-id-42'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fold' type-id='type-id-35' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='12' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='value' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='13' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='77' column='1' id='type-id-20'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='81' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-44' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='85' column='1'/>
+ </data-member>
+ </class-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='78' column='1' id='type-id-43'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='79' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='80' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='82' column='1' id='type-id-44'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='83' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='84' column='1'/>
+ </data-member>
+ </union-decl>
+ <typedef-decl name='ct_data' type-id='type-id-20' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='86' column='1' id='type-id-45'/>
+ <typedef-decl name='static_tree_desc' type-id='type-id-19' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='93' column='1' id='type-id-46'/>
+ <class-decl name='tree_desc_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='95' column='1' id='type-id-47'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-48' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='max_code' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='stat_desc' type-id='type-id-49' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='98' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='Pos' type-id='type-id-31' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='101' column='1' id='type-id-50'/>
+ <typedef-decl name='deflate_state' type-id='type-id-51' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='107' column='1' id='type-id-52'/>
+ <typedef-decl name='update_hash_cb' type-id='type-id-53' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='109' column='1' id='type-id-54'/>
+ <typedef-decl name='insert_string_cb' type-id='type-id-55' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='110' column='1' id='type-id-56'/>
+ <typedef-decl name='quick_insert_string_cb' type-id='type-id-57' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='111' column='1' id='type-id-58'/>
+ <class-decl name='internal_state' size-in-bits='48512' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='113' column='1' id='type-id-51'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-59' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_buf' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_out' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='pending_buf_size' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='pending' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='wrap' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='gzindex' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='gzhead' type-id='type-id-60' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='status' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='last_flush' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='reproducible' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='block_open' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='w_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='w_bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='w_mask' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='lookahead' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='high_water' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='window_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='window' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='150' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='prev' type-id='type-id-61' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='head' type-id='type-id-61' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='ins_h' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='168' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='block_start' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='170' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='match_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='175' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='prev_match' type-id='type-id-50' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='176' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='match_available' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='strstart' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='match_start' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='prev_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='max_chain_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='max_lazy_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='update_hash' type-id='type-id-54' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='201' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='insert_string' type-id='type-id-56' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='quick_insert_string' type-id='type-id-58' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='level' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='207' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='strategy' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='208' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='good_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='nice_match' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='213' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='crc_fold' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='215' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='2080'>
+ <var-decl name='dyn_ltree' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='219' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20416'>
+ <var-decl name='dyn_dtree' type-id='type-id-25' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22368'>
+ <var-decl name='bl_tree' type-id='type-id-21' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='221' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23616'>
+ <var-decl name='l_desc' type-id='type-id-47' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='223' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23808'>
+ <var-decl name='d_desc' type-id='type-id-47' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='224' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24000'>
+ <var-decl name='bl_desc' type-id='type-id-47' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='225' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24192'>
+ <var-decl name='bl_count' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='227' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24448'>
+ <var-decl name='heap' type-id='type-id-30' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='230' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42784'>
+ <var-decl name='heap_len' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='231' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42816'>
+ <var-decl name='heap_max' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='232' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42848'>
+ <var-decl name='depth' type-id='type-id-38' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='237' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47456'>
+ <var-decl name='lit_bufsize' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='241' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47488'>
+ <var-decl name='sym_buf' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='261' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47552'>
+ <var-decl name='sym_next' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='262' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47584'>
+ <var-decl name='sym_end' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='263' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47616'>
+ <var-decl name='opt_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='265' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47680'>
+ <var-decl name='static_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='266' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47744'>
+ <var-decl name='matches' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='267' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47776'>
+ <var-decl name='insert' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='268' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47808'>
+ <var-decl name='compressed_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='271' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47872'>
+ <var-decl name='bits_sent' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='272' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47936'>
+ <var-decl name='reserved_p' type-id='type-id-62' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='275' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48000'>
+ <var-decl name='bi_buf' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='277' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48064'>
+ <var-decl name='bi_valid' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='280' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48096'>
+ <var-decl name='reserved' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='284' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='alloc_func' type-id='type-id-64' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='93' column='1' id='type-id-65'/>
+ <typedef-decl name='free_func' type-id='type-id-66' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='94' column='1' id='type-id-67'/>
+ <class-decl name='zng_stream_s' size-in-bits='832' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='98' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-68' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='avail_in' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='total_in' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='next_out' type-id='type-id-69' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='avail_out' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total_out' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='msg' type-id='type-id-70' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='state' type-id='type-id-71' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='zalloc' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='zfree' type-id='type-id-67' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='opaque' type-id='type-id-72' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='data_type' type-id='type-id-13' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='adler' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reserved' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='117' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='zng_gz_header_s' size-in-bits='640' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='126' column='1' id='type-id-73'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='time' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='xflags' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='os' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra' type-id='type-id-69' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='extra_len' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='extra_max' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='name' type-id='type-id-69' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='name_max' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='comment' type-id='type-id-69' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='comm_max' type-id='type-id-7' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='137' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='hcrc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='done' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='139' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_gz_header' type-id='type-id-73' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='140' column='1' id='type-id-74'/>
+ <typedef-decl name='zng_gz_headerp' type-id='type-id-75' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='142' column='1' id='type-id-60'/>
+ <enum-decl name='zng_deflate_param' naming-typedef-id='type-id-76' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1800' column='1' id='type-id-77'>
+ <underlying-type type-id='type-id-37'/>
+ <enumerator name='Z_DEFLATE_LEVEL' value='0'/>
+ <enumerator name='Z_DEFLATE_STRATEGY' value='1'/>
+ <enumerator name='Z_DEFLATE_REPRODUCIBLE' value='2'/>
+ </enum-decl>
+ <typedef-decl name='zng_deflate_param' type-id='type-id-77' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1810' column='1' id='type-id-76'/>
+ <class-decl name='zng_deflate_param_value' size-in-bits='256' is-struct='yes' naming-typedef-id='type-id-78' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1812' column='1' id='type-id-79'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='param' type-id='type-id-76' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1813' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='buf' type-id='type-id-72' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1814' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='size' type-id='type-id-5' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1815' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='status' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1816' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_deflate_param_value' type-id='type-id-79' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1817' column='1' id='type-id-78'/>
+ <typedef-decl name='int32_t' type-id='type-id-80' filepath='/usr/mips64-linux-gnuabi64/include/bits/stdint-intn.h' line='26' column='1' id='type-id-27'/>
+ <typedef-decl name='uint8_t' type-id='type-id-81' filepath='/usr/mips64-linux-gnuabi64/include/bits/stdint-uintn.h' line='24' column='1' id='type-id-34'/>
+ <typedef-decl name='uint16_t' type-id='type-id-82' filepath='/usr/mips64-linux-gnuabi64/include/bits/stdint-uintn.h' line='25' column='1' id='type-id-31'/>
+ <typedef-decl name='uint64_t' type-id='type-id-83' filepath='/usr/mips64-linux-gnuabi64/include/bits/stdint-uintn.h' line='27' column='1' id='type-id-63'/>
+ <typedef-decl name='__uint8_t' type-id='type-id-2' filepath='/usr/mips64-linux-gnuabi64/include/bits/types.h' line='38' column='1' id='type-id-81'/>
+ <typedef-decl name='__uint16_t' type-id='type-id-39' filepath='/usr/mips64-linux-gnuabi64/include/bits/types.h' line='40' column='1' id='type-id-82'/>
+ <typedef-decl name='__int32_t' type-id='type-id-13' filepath='/usr/mips64-linux-gnuabi64/include/bits/types.h' line='41' column='1' id='type-id-80'/>
+ <typedef-decl name='__uint64_t' type-id='type-id-4' filepath='/usr/mips64-linux-gnuabi64/include/bits/types.h' line='45' column='1' id='type-id-83'/>
+ <pointer-type-def type-id='type-id-50' size-in-bits='64' id='type-id-61'/>
+ <pointer-type-def type-id='type-id-18' size-in-bits='64' id='type-id-62'/>
+ <qualified-type-def type-id='type-id-18' const='yes' id='type-id-84'/>
+ <pointer-type-def type-id='type-id-84' size-in-bits='64' id='type-id-70'/>
+ <qualified-type-def type-id='type-id-46' const='yes' id='type-id-85'/>
+ <pointer-type-def type-id='type-id-85' size-in-bits='64' id='type-id-49'/>
+ <qualified-type-def type-id='type-id-34' const='yes' id='type-id-86'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='64' id='type-id-68'/>
+ <pointer-type-def type-id='type-id-45' size-in-bits='64' id='type-id-48'/>
+ <pointer-type-def type-id='type-id-52' size-in-bits='64' id='type-id-87'/>
+ <qualified-type-def type-id='type-id-87' const='yes' id='type-id-88'/>
+ <pointer-type-def type-id='type-id-27' size-in-bits='64' id='type-id-89'/>
+ <pointer-type-def type-id='type-id-51' size-in-bits='64' id='type-id-71'/>
+ <pointer-type-def type-id='type-id-90' size-in-bits='64' id='type-id-57'/>
+ <pointer-type-def type-id='type-id-91' size-in-bits='64' id='type-id-53'/>
+ <pointer-type-def type-id='type-id-7' size-in-bits='64' id='type-id-92'/>
+ <pointer-type-def type-id='type-id-34' size-in-bits='64' id='type-id-69'/>
+ <pointer-type-def type-id='type-id-93' size-in-bits='64' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-94' size-in-bits='64' id='type-id-66'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-72'/>
+ <pointer-type-def type-id='type-id-95' size-in-bits='64' id='type-id-64'/>
+ <pointer-type-def type-id='type-id-78' size-in-bits='64' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-74' size-in-bits='64' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='64' id='type-id-59'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-19'/>
+ <function-decl name='zng_deflateInit2' mangled-name='zng_deflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <parameter type-id='type-id-27' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit' mangled-name='zng_deflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='323' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='323' column='1'/>
+ <parameter type-id='type-id-27' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='323' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit_' mangled-name='zng_deflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-27' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-70' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-27' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2_' mangled-name='zng_deflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-27' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-27' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-27' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-27' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-70' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-27' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetDictionary' mangled-name='zng_deflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-68' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-7' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetDictionary' mangled-name='zng_deflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-69' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-92' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateResetKeep' mangled-name='zng_deflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateReset' mangled-name='zng_deflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetHeader' mangled-name='zng_deflateSetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <parameter type-id='type-id-60' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflatePending' mangled-name='zng_deflatePending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflatePending@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-92' name='pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-89' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflatePrime' mangled-name='zng_deflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-27' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-27' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateParams' mangled-name='zng_deflateParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-27' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-27' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateTune' mangled-name='zng_deflateTune' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateTune@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-27' name='good_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-27' name='max_lazy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-27' name='nice_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-27' name='max_chain' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateBound' mangled-name='zng_deflateBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <parameter type-id='type-id-4' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_deflate' mangled-name='zng_deflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='725' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='725' column='1'/>
+ <parameter type-id='type-id-27' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='725' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateEnd' mangled-name='zng_deflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1022' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1022' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateCopy' mangled-name='zng_deflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <parameter type-id='type-id-59' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetParams' mangled-name='zng_deflateSetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-96' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-5' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetParams' mangled-name='zng_deflateGetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateGetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-96' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-5' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-90'>
+ <parameter type-id='type-id-88'/>
+ <parameter type-id='type-id-7'/>
+ <return type-id='type-id-50'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-91'>
+ <parameter type-id='type-id-88'/>
+ <parameter type-id='type-id-7'/>
+ <parameter type-id='type-id-7'/>
+ <return type-id='type-id-7'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-93'>
+ <parameter type-id='type-id-88'/>
+ <parameter type-id='type-id-7'/>
+ <parameter type-id='type-id-7'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-94'>
+ <parameter type-id='type-id-72'/>
+ <parameter type-id='type-id-72'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-95'>
+ <parameter type-id='type-id-72'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-72'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <class-decl name='functable_s' size-in-bits='1088' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='19' column='1' id='type-id-97'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='adler32' type-id='type-id-98' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='adler32_fold_copy' type-id='type-id-99' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='crc32' type-id='type-id-98' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='crc32_fold_reset' type-id='type-id-100' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='crc32_fold_copy' type-id='type-id-101' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='crc32_fold' type-id='type-id-102' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='crc32_fold_final' type-id='type-id-100' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='compare256' type-id='type-id-103' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='chunksize' type-id='type-id-104' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='chunkmemset_safe' type-id='type-id-105' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='inflate_fast' type-id='type-id-106' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='insert_string' type-id='type-id-55' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='longest_match' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='32' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='longest_match_slow' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='quick_insert_string' type-id='type-id-57' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='slide_hash' type-id='type-id-108' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='update_hash' type-id='type-id-53' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='36' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-42' size-in-bits='64' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-110' size-in-bits='64' id='type-id-104'/>
+ <pointer-type-def type-id='type-id-111' size-in-bits='64' id='type-id-103'/>
+ <pointer-type-def type-id='type-id-112' size-in-bits='64' id='type-id-100'/>
+ <pointer-type-def type-id='type-id-113' size-in-bits='64' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-114' size-in-bits='64' id='type-id-98'/>
+ <pointer-type-def type-id='type-id-115' size-in-bits='64' id='type-id-99'/>
+ <pointer-type-def type-id='type-id-116' size-in-bits='64' id='type-id-105'/>
+ <pointer-type-def type-id='type-id-117' size-in-bits='64' id='type-id-102'/>
+ <pointer-type-def type-id='type-id-118' size-in-bits='64' id='type-id-101'/>
+ <pointer-type-def type-id='type-id-119' size-in-bits='64' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-120' size-in-bits='64' id='type-id-106'/>
+ <var-decl name='functable' type-id='type-id-97' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='39' column='1'/>
+ <function-type size-in-bits='64' id='type-id-110'>
+ <return type-id='type-id-7'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-111'>
+ <parameter type-id='type-id-68'/>
+ <parameter type-id='type-id-68'/>
+ <return type-id='type-id-7'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-112'>
+ <parameter type-id='type-id-109'/>
+ <return type-id='type-id-7'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-113'>
+ <parameter type-id='type-id-88'/>
+ <parameter type-id='type-id-50'/>
+ <return type-id='type-id-7'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-114'>
+ <parameter type-id='type-id-7'/>
+ <parameter type-id='type-id-68'/>
+ <parameter type-id='type-id-5'/>
+ <return type-id='type-id-7'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-115'>
+ <parameter type-id='type-id-7'/>
+ <parameter type-id='type-id-69'/>
+ <parameter type-id='type-id-68'/>
+ <parameter type-id='type-id-5'/>
+ <return type-id='type-id-7'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-116'>
+ <parameter type-id='type-id-69'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-69'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-117'>
+ <parameter type-id='type-id-109'/>
+ <parameter type-id='type-id-68'/>
+ <parameter type-id='type-id-5'/>
+ <parameter type-id='type-id-7'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-118'>
+ <parameter type-id='type-id-109'/>
+ <parameter type-id='type-id-69'/>
+ <parameter type-id='type-id-68'/>
+ <parameter type-id='type-id-5'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-119'>
+ <parameter type-id='type-id-87'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-120'>
+ <parameter type-id='type-id-59'/>
+ <parameter type-id='type-id-7'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <typedef-decl name='gzFile' type-id='type-id-121' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1285' column='1' id='type-id-122'/>
+ <class-decl name='gzFile_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1790' column='1' id='type-id-123'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1791' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='next' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1792' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pos' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1793' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-123' size-in-bits='64' id='type-id-121'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-124'/>
+ <function-decl name='zng_gzopen' mangled-name='zng_gzopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-70' name='path' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <parameter type-id='type-id-70' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <return type-id='type-id-122'/>
+ </function-decl>
+ <function-decl name='zng_gzdopen' mangled-name='zng_gzdopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzdopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-13' name='fd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <parameter type-id='type-id-70' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <return type-id='type-id-122'/>
+ </function-decl>
+ <function-decl name='zng_gzclose' mangled-name='zng_gzclose' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzbuffer' mangled-name='zng_gzbuffer' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzbuffer@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <parameter type-id='type-id-3' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzrewind' mangled-name='zng_gzrewind' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzrewind@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzseek' mangled-name='zng_gzseek' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzseek@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-9' name='offset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-13' name='whence' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gztell' mangled-name='zng_gztell' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gztell@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzoffset' mangled-name='zng_gzoffset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzoffset@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzeof' mangled-name='zng_gzeof' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzeof@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzerror' mangled-name='zng_gzerror' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzerror@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <parameter type-id='type-id-124' name='errnum' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <return type-id='type-id-70'/>
+ </function-decl>
+ <function-decl name='zng_gzclearerr' mangled-name='zng_gzclearerr' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclearerr@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <type-decl name='variadic parameter type' id='type-id-125'/>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-72' filepath='/usr/lib/gcc-cross/mips64-linux-gnuabi64/10/include/stdarg.h' line='40' column='1' id='type-id-126'/>
+ <typedef-decl name='va_list' type-id='type-id-126' filepath='/usr/lib/gcc-cross/mips64-linux-gnuabi64/10/include/stdarg.h' line='99' column='1' id='type-id-127'/>
+ <function-decl name='zng_gzwrite' mangled-name='zng_gzwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-72' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzfwrite' mangled-name='zng_gzfwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzfwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-72' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-5' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-5' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_gzputc' mangled-name='zng_gzputc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzputc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <parameter type-id='type-id-13' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzputs' mangled-name='zng_gzputs' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzputs@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <parameter type-id='type-id-70' name='s' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzvprintf' mangled-name='zng_gzvprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzvprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-70' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-127' name='va' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzprintf' mangled-name='zng_gzprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter type-id='type-id-70' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzflush' mangled-name='zng_gzflush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzflush@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <parameter type-id='type-id-13' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzsetparams' mangled-name='zng_gzsetparams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzsetparams@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-13' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-13' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_w' mangled-name='zng_gzclose_w' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='490' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose_w@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='490' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <typedef-decl name='in_func' type-id='type-id-128' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1075' column='1' id='type-id-129'/>
+ <typedef-decl name='out_func' type-id='type-id-130' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1076' column='1' id='type-id-131'/>
+ <pointer-type-def type-id='type-id-68' size-in-bits='64' id='type-id-132'/>
+ <pointer-type-def type-id='type-id-133' size-in-bits='64' id='type-id-130'/>
+ <pointer-type-def type-id='type-id-134' size-in-bits='64' id='type-id-128'/>
+ <function-decl name='zng_inflateBackInit' mangled-name='zng_inflateBackInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-69' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackInit_' mangled-name='zng_inflateBackInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-69' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-70' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <parameter type-id='type-id-27' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateBack' mangled-name='zng_inflateBack' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBack@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-129' name='in' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-72' name='in_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-131' name='out' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-72' name='out_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackEnd' mangled-name='zng_inflateBackEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-133'>
+ <parameter type-id='type-id-72'/>
+ <parameter type-id='type-id-69'/>
+ <parameter type-id='type-id-7'/>
+ <return type-id='type-id-27'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-134'>
+ <parameter type-id='type-id-72'/>
+ <parameter type-id='type-id-132'/>
+ <return type-id='type-id-7'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <function-decl name='zng_inflateResetKeep' mangled-name='zng_inflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset' mangled-name='zng_inflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset2' mangled-name='zng_inflateReset2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateReset2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2' mangled-name='zng_inflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit' mangled-name='zng_inflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit_' mangled-name='zng_inflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-70' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-27' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2_' mangled-name='zng_inflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-27' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-70' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-27' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflatePrime' mangled-name='zng_inflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-27' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflate' mangled-name='zng_inflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-27' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateEnd' mangled-name='zng_inflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetDictionary' mangled-name='zng_inflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-69' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-92' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateSetDictionary' mangled-name='zng_inflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-68' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-7' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetHeader' mangled-name='zng_inflateGetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateGetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <parameter type-id='type-id-60' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateSync' mangled-name='zng_inflateSync' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSync@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateSyncPoint' mangled-name='zng_inflateSyncPoint' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSyncPoint@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateCopy' mangled-name='zng_inflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-59' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateUndermine' mangled-name='zng_inflateUndermine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateUndermine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <parameter type-id='type-id-27' name='subvert' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateValidate' mangled-name='zng_inflateValidate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateValidate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <parameter type-id='type-id-27' name='check' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-27'/>
+ </function-decl>
+ <function-decl name='zng_inflateMark' mangled-name='zng_inflateMark' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateMark@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='zng_inflateCodesUsed' mangled-name='zng_inflateCodesUsed' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateCodesUsed@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-59' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <array-type-def dimensions='1' type-id='type-id-135' size-in-bits='9216' id='type-id-136'>
+ <subrange length='288' type-id='type-id-4' id='type-id-137'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-135' size-in-bits='960' id='type-id-138'>
+ <subrange length='30' type-id='type-id-4' id='type-id-139'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-140' size-in-bits='928' id='type-id-141'>
+ <subrange length='29' type-id='type-id-4' id='type-id-142'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-140' size-in-bits='960' id='type-id-143'>
+ <subrange length='30' type-id='type-id-4' id='type-id-139'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='2048' id='type-id-144'>
+ <subrange length='256' type-id='type-id-4' id='type-id-145'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='4096' id='type-id-146'>
+ <subrange length='512' type-id='type-id-4' id='type-id-147'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-45' const='yes' id='type-id-135'/>
+ <qualified-type-def type-id='type-id-13' const='yes' id='type-id-140'/>
+ <var-decl name='static_ltree' type-id='type-id-136' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='14' column='1'/>
+ <var-decl name='static_dtree' type-id='type-id-138' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='15' column='1'/>
+ <var-decl name='zng_dist_code' type-id='type-id-146' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='17' column='1'/>
+ <var-decl name='zng_length_code' type-id='type-id-144' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='18' column='1'/>
+ <var-decl name='base_length' type-id='type-id-141' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='20' column='1'/>
+ <var-decl name='base_dist' type-id='type-id-143' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='21' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <function-decl name='zng_uncompress2' mangled-name='zng_uncompress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_uncompress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-14' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-14' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_uncompress' mangled-name='zng_uncompress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_uncompress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-14' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-5' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <array-type-def dimensions='1' type-id='type-id-148' size-in-bits='640' id='type-id-149'>
+ <subrange length='10' type-id='type-id-4' id='type-id-150'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-84' size-in-bits='304' id='type-id-151'>
+ <subrange length='38' type-id='type-id-4' id='type-id-152'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-70' const='yes' id='type-id-148'/>
+ <var-decl name='zng_vstring' type-id='type-id-151' mangled-name='zng_vstring' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='23' column='1' elf-symbol-id='zng_vstring@@ZLIB_NG_2.0.0'/>
+ <function-decl name='zlibng_version' mangled-name='zlibng_version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibng_version@@ZLIB_NG_2.1.0'>
+ <return type-id='type-id-70'/>
+ </function-decl>
+ <function-decl name='zng_zlibCompileFlags' mangled-name='zng_zlibCompileFlags' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='36' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_zlibCompileFlags@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_zError' mangled-name='zng_zError' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_zError@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-13' name='err' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1'/>
+ <return type-id='type-id-70'/>
+ </function-decl>
+ <var-decl name='zng_z_errmsg' type-id='type-id-149' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='24' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C99'>
+ <function-decl name='zng_gzread' mangled-name='zng_gzread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-72' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzfread' mangled-name='zng_gzfread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzfread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-72' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-5' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-5' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_gzgetc' mangled-name='zng_gzgetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzgetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzungetc' mangled-name='zng_gzungetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzungetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-13' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzgets' mangled-name='zng_gzgets' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzgets@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-62' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-13' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <return type-id='type-id-62'/>
+ </function-decl>
+ <function-decl name='zng_gzdirect' mangled-name='zng_gzdirect' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzdirect@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_r' mangled-name='zng_gzclose_r' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='576' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose_r@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-122' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='576' column='1'/>
+ <return type-id='type-id-13'/>
+ </function-decl>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc-unknown-linux-gnu.abi b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc-unknown-linux-gnu.abi
new file mode 100644
index 0000000000..3164f07e71
--- /dev/null
+++ b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc-unknown-linux-gnu.abi
@@ -0,0 +1,1895 @@
+<abi-corpus version='2.0' path='btmp1/libz-ng.so.2.1.0.devel' architecture='elf-powerpc' soname='libz-ng.so.2'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld.so.1'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='zlibng_version' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compressBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_gen' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_op' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePending' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateTune' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_get_crc_table' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzbuffer' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclearerr' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_r' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_w' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdirect' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzeof' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzerror' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzflush' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgets' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzoffset' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputs' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzrewind' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzseek' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzsetparams' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gztell' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzungetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzvprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBack' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCodesUsed' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateMark' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSync' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSyncPoint' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateUndermine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateValidate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zError' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zlibCompileFlags' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <elf-variable-symbols>
+ <elf-symbol name='zng_vstring' size='38' version='ZLIB_NG_2.0.0' is-default-version='yes' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-variable-symbols>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='void' id='type-id-4'/>
+ <typedef-decl name='uint32_t' type-id='type-id-5' filepath='/usr/powerpc-linux-gnu/include/bits/stdint-uintn.h' line='26' column='1' id='type-id-6'/>
+ <typedef-decl name='__uint32_t' type-id='type-id-3' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='42' column='1' id='type-id-5'/>
+ <typedef-decl name='__int64_t' type-id='type-id-1' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='47' column='1' id='type-id-7'/>
+ <typedef-decl name='__off64_t' type-id='type-id-7' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='153' column='1' id='type-id-8'/>
+ <typedef-decl name='off64_t' type-id='type-id-8' filepath='/usr/powerpc-linux-gnu/include/sys/types.h' line='92' column='1' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-10'/>
+ <pointer-type-def type-id='type-id-10' size-in-bits='32' id='type-id-11'/>
+ <function-decl name='zng_adler32' mangled-name='zng_adler32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_adler32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_adler32_combine' mangled-name='zng_adler32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_adler32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-6' name='adler2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-12'/>
+ <class-decl name='internal_state' size-in-bits='47744' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='113' column='1' id='type-id-13'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='pending_buf' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_out' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='pending_buf_size' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='wrap' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='gzindex' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='gzhead' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='status' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='last_flush' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='reproducible' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='block_open' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='w_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='w_bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='w_mask' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='lookahead' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='high_water' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='window_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='window' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='150' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='prev' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='head' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='ins_h' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='168' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='block_start' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='170' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='match_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='175' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='prev_match' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='176' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='match_available' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='strstart' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='match_start' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='prev_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='max_chain_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='max_lazy_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='update_hash' type-id='type-id-20' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='201' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='insert_string' type-id='type-id-21' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='quick_insert_string' type-id='type-id-22' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='level' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='207' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='strategy' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='208' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='good_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='nice_match' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='213' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='crc_fold' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='215' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1824'>
+ <var-decl name='dyn_ltree' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='219' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20160'>
+ <var-decl name='dyn_dtree' type-id='type-id-25' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22112'>
+ <var-decl name='bl_tree' type-id='type-id-26' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='221' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23360'>
+ <var-decl name='l_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='223' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23456'>
+ <var-decl name='d_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='224' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23552'>
+ <var-decl name='bl_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='225' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23648'>
+ <var-decl name='bl_count' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='227' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23904'>
+ <var-decl name='heap' type-id='type-id-29' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='230' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42240'>
+ <var-decl name='heap_len' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='231' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42272'>
+ <var-decl name='heap_max' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='232' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42304'>
+ <var-decl name='depth' type-id='type-id-30' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='237' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46912'>
+ <var-decl name='lit_bufsize' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='241' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46944'>
+ <var-decl name='sym_buf' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='261' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46976'>
+ <var-decl name='sym_next' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='262' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47008'>
+ <var-decl name='sym_end' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='263' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47040'>
+ <var-decl name='opt_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='265' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47072'>
+ <var-decl name='static_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='266' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47104'>
+ <var-decl name='matches' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='267' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47136'>
+ <var-decl name='insert' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='268' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47168'>
+ <var-decl name='compressed_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='271' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47200'>
+ <var-decl name='bits_sent' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='272' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47232'>
+ <var-decl name='reserved_p' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='275' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47296'>
+ <var-decl name='bi_buf' type-id='type-id-33' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='277' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47360'>
+ <var-decl name='bi_valid' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='280' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47392'>
+ <var-decl name='reserved' type-id='type-id-35' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='284' column='1'/>
+ </data-member>
+ </class-decl>
+ <type-decl name='int' size-in-bits='32' id='type-id-16'/>
+ <type-decl name='unsigned long int' size-in-bits='32' id='type-id-31'/>
+ <typedef-decl name='alloc_func' type-id='type-id-36' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='93' column='1' id='type-id-37'/>
+ <typedef-decl name='free_func' type-id='type-id-38' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='94' column='1' id='type-id-39'/>
+ <class-decl name='zng_stream_s' size-in-bits='448' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='98' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-41' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='avail_in' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='total_in' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='next_out' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='avail_out' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='total_out' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='msg' type-id='type-id-44' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='state' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='zalloc' type-id='type-id-37' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='zfree' type-id='type-id-39' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='opaque' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='data_type' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='adler' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='reserved' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='117' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_stream' type-id='type-id-40' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='118' column='1' id='type-id-47'/>
+ <typedef-decl name='size_t' type-id='type-id-3' filepath='/usr/lib/gcc-cross/powerpc-linux-gnu/11/include/stddef.h' line='209' column='1' id='type-id-42'/>
+ <typedef-decl name='int32_t' type-id='type-id-48' filepath='/usr/powerpc-linux-gnu/include/bits/stdint-intn.h' line='26' column='1' id='type-id-34'/>
+ <typedef-decl name='uint8_t' type-id='type-id-49' filepath='/usr/powerpc-linux-gnu/include/bits/stdint-uintn.h' line='24' column='1' id='type-id-50'/>
+ <typedef-decl name='__uint8_t' type-id='type-id-2' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='38' column='1' id='type-id-49'/>
+ <typedef-decl name='__int32_t' type-id='type-id-16' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='41' column='1' id='type-id-48'/>
+ <qualified-type-def type-id='type-id-12' const='yes' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-51' size-in-bits='32' id='type-id-44'/>
+ <qualified-type-def type-id='type-id-50' const='yes' id='type-id-52'/>
+ <pointer-type-def type-id='type-id-52' size-in-bits='32' id='type-id-41'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='32' id='type-id-45'/>
+ <pointer-type-def type-id='type-id-42' size-in-bits='32' id='type-id-53'/>
+ <pointer-type-def type-id='type-id-50' size-in-bits='32' id='type-id-43'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='32' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-54' size-in-bits='32' id='type-id-38'/>
+ <pointer-type-def type-id='type-id-4' size-in-bits='32' id='type-id-46'/>
+ <pointer-type-def type-id='type-id-55' size-in-bits='32' id='type-id-36'/>
+ <pointer-type-def type-id='type-id-47' size-in-bits='32' id='type-id-14'/>
+ <function-decl name='zng_compress2' mangled-name='zng_compress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <parameter type-id='type-id-16' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_compress' mangled-name='zng_compress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_compressBound' mangled-name='zng_compressBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compressBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit' mangled-name='zng_deflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='227' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflate' mangled-name='zng_deflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='248' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateEnd' mangled-name='zng_deflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='362' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-54'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-55'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='power_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='14' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <qualified-type-def type-id='type-id-6' const='yes' id='type-id-56'/>
+ <pointer-type-def type-id='type-id-56' size-in-bits='32' id='type-id-57'/>
+ <function-decl name='zng_get_crc_table' mangled-name='zng_get_crc_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='18' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_get_crc_table@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-57'/>
+ </function-decl>
+ <function-decl name='zng_crc32' mangled-name='zng_crc32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_crc32_combine' mangled-name='zng_crc32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_gen' mangled-name='zng_crc32_combine_gen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine_gen@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_op' mangled-name='zng_crc32_combine_op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine_op@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-56' name='op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-58'/>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='1248' id='type-id-26'>
+ <subrange length='39' type-id='type-id-3' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='18336' id='type-id-24'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='1952' id='type-id-25'>
+ <subrange length='61' type-id='type-id-3' id='type-id-62'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-34' size-in-bits='352' id='type-id-35'>
+ <subrange length='11' type-id='type-id-3' id='type-id-63'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-16' size-in-bits='18336' id='type-id-29'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-64'/>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='256' id='type-id-28'>
+ <subrange length='16' type-id='type-id-3' id='type-id-66'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='512' id='type-id-67'>
+ <subrange length='64' type-id='type-id-3' id='type-id-68'/>
+ </array-type-def>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-69'/>
+ <array-type-def dimensions='1' type-id='type-id-2' size-in-bits='4584' id='type-id-30'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-70'/>
+ <class-decl name='crc32_fold_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='11' column='1' id='type-id-23'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fold' type-id='type-id-67' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='12' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='value' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='13' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='77' column='1' id='type-id-59'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-71' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='81' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-72' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='85' column='1'/>
+ </data-member>
+ </class-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='78' column='1' id='type-id-71'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='79' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='80' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='82' column='1' id='type-id-72'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='83' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='84' column='1'/>
+ </data-member>
+ </union-decl>
+ <typedef-decl name='ct_data' type-id='type-id-59' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='86' column='1' id='type-id-73'/>
+ <typedef-decl name='static_tree_desc' type-id='type-id-58' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='93' column='1' id='type-id-74'/>
+ <class-decl name='tree_desc_s' size-in-bits='96' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='95' column='1' id='type-id-27'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-75' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='max_code' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='stat_desc' type-id='type-id-76' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='98' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='Pos' type-id='type-id-65' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='101' column='1' id='type-id-19'/>
+ <typedef-decl name='deflate_state' type-id='type-id-13' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='107' column='1' id='type-id-77'/>
+ <typedef-decl name='update_hash_cb' type-id='type-id-78' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='109' column='1' id='type-id-20'/>
+ <typedef-decl name='insert_string_cb' type-id='type-id-79' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='110' column='1' id='type-id-21'/>
+ <typedef-decl name='quick_insert_string_cb' type-id='type-id-80' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='111' column='1' id='type-id-22'/>
+ <enum-decl name='block_state' naming-typedef-id='type-id-81' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='287' column='1' id='type-id-82'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='need_more' value='0'/>
+ <enumerator name='block_done' value='1'/>
+ <enumerator name='finish_started' value='2'/>
+ <enumerator name='finish_done' value='3'/>
+ </enum-decl>
+ <typedef-decl name='block_state' type-id='type-id-82' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='292' column='1' id='type-id-81'/>
+ <typedef-decl name='zng_calloc_func' type-id='type-id-55' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='132' column='1' id='type-id-83'/>
+ <typedef-decl name='zng_cfree_func' type-id='type-id-54' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='133' column='1' id='type-id-84'/>
+ <class-decl name='zng_gz_header_s' size-in-bits='416' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='126' column='1' id='type-id-85'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='time' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='xflags' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='os' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='extra' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='extra_len' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='name' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='name_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='comment' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='comm_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='137' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='hcrc' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='done' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='139' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_gz_header' type-id='type-id-85' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='140' column='1' id='type-id-86'/>
+ <typedef-decl name='zng_gz_headerp' type-id='type-id-87' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='142' column='1' id='type-id-17'/>
+ <enum-decl name='zng_deflate_param' naming-typedef-id='type-id-88' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1800' column='1' id='type-id-89'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='Z_DEFLATE_LEVEL' value='0'/>
+ <enumerator name='Z_DEFLATE_STRATEGY' value='1'/>
+ <enumerator name='Z_DEFLATE_REPRODUCIBLE' value='2'/>
+ </enum-decl>
+ <typedef-decl name='zng_deflate_param' type-id='type-id-89' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1810' column='1' id='type-id-88'/>
+ <class-decl name='zng_deflate_param_value' size-in-bits='128' is-struct='yes' naming-typedef-id='type-id-90' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1812' column='1' id='type-id-91'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='param' type-id='type-id-88' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1813' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='buf' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1814' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='size' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1815' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='status' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1816' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_deflate_param_value' type-id='type-id-91' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1817' column='1' id='type-id-90'/>
+ <typedef-decl name='uint16_t' type-id='type-id-92' filepath='/usr/powerpc-linux-gnu/include/bits/stdint-uintn.h' line='25' column='1' id='type-id-65'/>
+ <typedef-decl name='uint64_t' type-id='type-id-93' filepath='/usr/powerpc-linux-gnu/include/bits/stdint-uintn.h' line='27' column='1' id='type-id-33'/>
+ <typedef-decl name='__uint16_t' type-id='type-id-70' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='40' column='1' id='type-id-92'/>
+ <typedef-decl name='__uint64_t' type-id='type-id-64' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='48' column='1' id='type-id-93'/>
+ <pointer-type-def type-id='type-id-19' size-in-bits='32' id='type-id-18'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='32' id='type-id-32'/>
+ <qualified-type-def type-id='type-id-74' const='yes' id='type-id-94'/>
+ <pointer-type-def type-id='type-id-94' size-in-bits='32' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-73' size-in-bits='32' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-77' size-in-bits='32' id='type-id-95'/>
+ <qualified-type-def type-id='type-id-95' const='yes' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-34' size-in-bits='32' id='type-id-97'/>
+ <pointer-type-def type-id='type-id-98' size-in-bits='32' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-99' size-in-bits='32' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-6' size-in-bits='32' id='type-id-100'/>
+ <pointer-type-def type-id='type-id-101' size-in-bits='32' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-83' size-in-bits='32' id='type-id-102'/>
+ <pointer-type-def type-id='type-id-84' size-in-bits='32' id='type-id-103'/>
+ <pointer-type-def type-id='type-id-90' size-in-bits='32' id='type-id-104'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='32' id='type-id-87'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-58'/>
+ <function-decl name='cpu_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='23' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='deflate_stored' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='111' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_fast' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='112' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_quick' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='113' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_medium' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='115' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_slow' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='117' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_rle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='118' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_huff' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='update_hash_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='124' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='125' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='126' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2' mangled-name='zng_deflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit_' mangled-name='zng_deflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2_' mangled-name='zng_deflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetDictionary' mangled-name='zng_deflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetDictionary' mangled-name='zng_deflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-43' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-100' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateResetKeep' mangled-name='zng_deflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateReset' mangled-name='zng_deflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetHeader' mangled-name='zng_deflateSetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <parameter type-id='type-id-17' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePending' mangled-name='zng_deflatePending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflatePending@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-100' name='pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-97' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePrime' mangled-name='zng_deflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateParams' mangled-name='zng_deflateParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateTune' mangled-name='zng_deflateTune' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateTune@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='good_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_lazy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='nice_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_chain' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateBound' mangled-name='zng_deflateBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <parameter type-id='type-id-31' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ <function-decl name='zng_deflateCopy' mangled-name='zng_deflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <parameter type-id='type-id-14' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetParams' mangled-name='zng_deflateSetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-104' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-42' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetParams' mangled-name='zng_deflateGetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateGetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-104' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-42' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_tr_init' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='380' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='382' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_align' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='383' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_stored_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='384' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_zcalloc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='129' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='zng_zcfree' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='130' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_alloc_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='135' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-102'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='zng_free_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='136' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-103'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-98'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-19'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-99'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-101'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_fast.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_fill_window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='376' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='381' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_flush_pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='50' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_quick.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='memcmp' filepath='/usr/powerpc-linux-gnu/include/string.h' line='64' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_stored.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_read_buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='51' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-3'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='crc32_fold' type-id='type-id-23' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='14' column='1' id='type-id-105'/>
+ <class-decl name='functable_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='19' column='1' id='type-id-106'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='adler32' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='adler32_fold_copy' type-id='type-id-108' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='crc32' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='crc32_fold_reset' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='crc32_fold_copy' type-id='type-id-110' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='crc32_fold' type-id='type-id-111' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='crc32_fold_final' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='compare256' type-id='type-id-112' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='chunksize' type-id='type-id-113' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='chunkmemset_safe' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='inflate_fast' type-id='type-id-115' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='insert_string' type-id='type-id-79' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='longest_match' type-id='type-id-116' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='32' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='longest_match_slow' type-id='type-id-116' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='quick_insert_string' type-id='type-id-80' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='slide_hash' type-id='type-id-117' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='update_hash' type-id='type-id-78' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='36' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-105' size-in-bits='32' id='type-id-118'/>
+ <pointer-type-def type-id='type-id-23' size-in-bits='32' id='type-id-119'/>
+ <pointer-type-def type-id='type-id-120' size-in-bits='32' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-121' size-in-bits='32' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-122' size-in-bits='32' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-123' size-in-bits='32' id='type-id-116'/>
+ <pointer-type-def type-id='type-id-124' size-in-bits='32' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-125' size-in-bits='32' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-126' size-in-bits='32' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-127' size-in-bits='32' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-128' size-in-bits='32' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-129' size-in-bits='32' id='type-id-117'/>
+ <pointer-type-def type-id='type-id-130' size-in-bits='32' id='type-id-115'/>
+ <function-decl name='adler32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.h' line='9' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='28' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_vmx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='33' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='48' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunksize_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='75' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='76' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='chunksize_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='93' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='94' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='inflate_fast_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='104' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='inflate_fast_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='118' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_crc32_braid' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='124' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='136' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_power9' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='156' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='161' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='longest_match_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='169' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_power9' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='189' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='193' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_power9' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='211' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='215' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='slide_hash_vmx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='231' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='slide_hash_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='234' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='update_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='241' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_reset_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='16' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='17' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='crc32_fold_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='18' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='crc32_fold_final_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='19' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='slide_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='377' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <var-decl name='functable' type-id='type-id-106' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='39' column='1'/>
+ <function-type size-in-bits='32' id='type-id-120'>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-121'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-122'>
+ <parameter type-id='type-id-119'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-123'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-124'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-125'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-126'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-127'>
+ <parameter type-id='type-id-119'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-128'>
+ <parameter type-id='type-id-119'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-129'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-130'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='variadic parameter type' id='type-id-131'/>
+ <typedef-decl name='gzFile' type-id='type-id-132' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1285' column='1' id='type-id-133'/>
+ <class-decl name='gzFile_s' size-in-bits='128' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1790' column='1' id='type-id-134'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1791' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='next' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1792' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pos' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1793' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-134' size-in-bits='32' id='type-id-132'/>
+ <pointer-type-def type-id='type-id-16' size-in-bits='32' id='type-id-135'/>
+ <function-decl name='zng_gzopen' mangled-name='zng_gzopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-44' name='path' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <parameter type-id='type-id-44' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='zng_gzdopen' mangled-name='zng_gzdopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzdopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-16' name='fd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <parameter type-id='type-id-44' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='zng_gzclose' mangled-name='zng_gzclose' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzbuffer' mangled-name='zng_gzbuffer' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzbuffer@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <parameter type-id='type-id-3' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzrewind' mangled-name='zng_gzrewind' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzrewind@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzseek' mangled-name='zng_gzseek' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzseek@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-9' name='offset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-16' name='whence' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gztell' mangled-name='zng_gztell' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gztell@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzoffset' mangled-name='zng_gzoffset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzoffset@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzeof' mangled-name='zng_gzeof' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzeof@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzerror' mangled-name='zng_gzerror' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzerror@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <parameter type-id='type-id-135' name='errnum' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <function-decl name='zng_gzclearerr' mangled-name='zng_gzclearerr' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclearerr@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_r' mangled-name='zng_gzclose_r' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1641' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose_r@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_w' mangled-name='zng_gzclose_w' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1643' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose_w@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='__open_2' filepath='/usr/powerpc-linux-gnu/include/bits/fcntl2.h' line='26' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-44'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='__open_too_many_args' filepath='/usr/powerpc-linux-gnu/include/bits/fcntl2.h' line='35' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='__open_missing_mode' filepath='/usr/powerpc-linux-gnu/include/bits/fcntl2.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/powerpc-linux-gnu/include/stdlib.h' line='540' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/powerpc-linux-gnu/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-44'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/powerpc-linux-gnu/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='__va_list_tag' size-in-bits='96' is-struct='yes' visibility='default' id='type-id-136'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='gpr' type-id='type-id-2' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='fpr' type-id='type-id-2' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='reserved' type-id='type-id-70' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='overflow_arg_area' type-id='type-id-46' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='reg_save_area' type-id='type-id-46' visibility='default'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-136' size-in-bits='32' id='type-id-137'/>
+ <function-decl name='zng_gzwrite' mangled-name='zng_gzwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzfwrite' mangled-name='zng_gzfwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzfwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-42' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-42' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_gzputc' mangled-name='zng_gzputc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzputc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <parameter type-id='type-id-16' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzputs' mangled-name='zng_gzputs' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzputs@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <parameter type-id='type-id-44' name='s' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzvprintf' mangled-name='zng_gzvprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzvprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-44' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-137' name='va' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzprintf' mangled-name='zng_gzprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter type-id='type-id-44' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzflush' mangled-name='zng_gzflush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzflush@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <parameter type-id='type-id-16' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzsetparams' mangled-name='zng_gzsetparams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzsetparams@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-16' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-16' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/powerpc-linux-gnu/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-138'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-139' size-in-bits='61568' id='type-id-140'>
+ <subrange length='1924' type-id='type-id-3' id='type-id-141'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='4608' id='type-id-142'>
+ <subrange length='288' type-id='type-id-3' id='type-id-143'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='5120' id='type-id-144'>
+ <subrange length='320' type-id='type-id-3' id='type-id-145'/>
+ </array-type-def>
+ <enum-decl name='inflate_mode' naming-typedef-id='type-id-146' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='25' column='1' id='type-id-147'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='HEAD' value='16180'/>
+ <enumerator name='FLAGS' value='16181'/>
+ <enumerator name='TIME' value='16182'/>
+ <enumerator name='OS' value='16183'/>
+ <enumerator name='EXLEN' value='16184'/>
+ <enumerator name='EXTRA' value='16185'/>
+ <enumerator name='NAME' value='16186'/>
+ <enumerator name='COMMENT' value='16187'/>
+ <enumerator name='HCRC' value='16188'/>
+ <enumerator name='DICTID' value='16189'/>
+ <enumerator name='DICT' value='16190'/>
+ <enumerator name='TYPE' value='16191'/>
+ <enumerator name='TYPEDO' value='16192'/>
+ <enumerator name='STORED' value='16193'/>
+ <enumerator name='COPY_' value='16194'/>
+ <enumerator name='COPY' value='16195'/>
+ <enumerator name='TABLE' value='16196'/>
+ <enumerator name='LENLENS' value='16197'/>
+ <enumerator name='CODELENS' value='16198'/>
+ <enumerator name='LEN_' value='16199'/>
+ <enumerator name='LEN' value='16200'/>
+ <enumerator name='LENEXT' value='16201'/>
+ <enumerator name='DIST' value='16202'/>
+ <enumerator name='DISTEXT' value='16203'/>
+ <enumerator name='MATCH' value='16204'/>
+ <enumerator name='LIT' value='16205'/>
+ <enumerator name='CHECK' value='16206'/>
+ <enumerator name='LENGTH' value='16207'/>
+ <enumerator name='DONE' value='16208'/>
+ <enumerator name='BAD' value='16209'/>
+ <enumerator name='MEM' value='16210'/>
+ <enumerator name='SYNC' value='16211'/>
+ </enum-decl>
+ <typedef-decl name='inflate_mode' type-id='type-id-147' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='58' column='1' id='type-id-146'/>
+ <class-decl name='inflate_state' size-in-bits='72960' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='87' column='1' id='type-id-148'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='mode' type-id='type-id-146' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='last' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='90' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='wrap' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='havedict' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='flags' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='94' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='dmax' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='check' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='total' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='head' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='wbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='wsize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='whave' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='wnext' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='window' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='crc_fold' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='hold' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='length' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='offset' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='extra' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='lencode' type-id='type-id-149' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1248'>
+ <var-decl name='distcode' type-id='type-id-149' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='lenbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='distbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='ncode' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1376'>
+ <var-decl name='nlen' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='ndist' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='have' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='next' type-id='type-id-150' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='lens' type-id='type-id-144' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='6624'>
+ <var-decl name='work' type-id='type-id-142' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='11232'>
+ <var-decl name='codes' type-id='type-id-140' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72800'>
+ <var-decl name='sane' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72832'>
+ <var-decl name='back' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72864'>
+ <var-decl name='was' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72896'>
+ <var-decl name='chunksize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='134' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-139' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='27' column='1' id='type-id-151'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='30' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-151' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='31' column='1' id='type-id-139'/>
+ <enum-decl name='codetype' naming-typedef-id='type-id-152' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='57' column='1' id='type-id-153'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <typedef-decl name='codetype' type-id='type-id-153' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='61' column='1' id='type-id-152'/>
+ <typedef-decl name='in_func' type-id='type-id-154' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1075' column='1' id='type-id-155'/>
+ <typedef-decl name='out_func' type-id='type-id-156' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1076' column='1' id='type-id-157'/>
+ <pointer-type-def type-id='type-id-139' size-in-bits='32' id='type-id-150'/>
+ <pointer-type-def type-id='type-id-150' size-in-bits='32' id='type-id-158'/>
+ <qualified-type-def type-id='type-id-139' const='yes' id='type-id-159'/>
+ <pointer-type-def type-id='type-id-159' size-in-bits='32' id='type-id-149'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='32' id='type-id-160'/>
+ <pointer-type-def type-id='type-id-148' size-in-bits='32' id='type-id-161'/>
+ <pointer-type-def type-id='type-id-162' size-in-bits='32' id='type-id-156'/>
+ <pointer-type-def type-id='type-id-163' size-in-bits='32' id='type-id-154'/>
+ <pointer-type-def type-id='type-id-65' size-in-bits='32' id='type-id-164'/>
+ <pointer-type-def type-id='type-id-3' size-in-bits='32' id='type-id-165'/>
+ <function-decl name='zng_inflateBackInit' mangled-name='zng_inflateBackInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-43' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackInit_' mangled-name='zng_inflateBackInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-43' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBack' mangled-name='zng_inflateBack' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBack@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-155' name='in' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-46' name='in_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-157' name='out' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-46' name='out_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackEnd' mangled-name='zng_inflateBackEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_fixedtables' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='138' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-161'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_inflate_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='63' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-152'/>
+ <parameter type-id='type-id-164'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-158'/>
+ <parameter type-id='type-id-165'/>
+ <parameter type-id='type-id-164'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-162'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-34'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-163'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-160'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='32' id='type-id-166'/>
+ <function-decl name='zng_inflateResetKeep' mangled-name='zng_inflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset' mangled-name='zng_inflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset2' mangled-name='zng_inflateReset2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateReset2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2' mangled-name='zng_inflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit' mangled-name='zng_inflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit_' mangled-name='zng_inflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2_' mangled-name='zng_inflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflatePrime' mangled-name='zng_inflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflate' mangled-name='zng_inflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-34' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateEnd' mangled-name='zng_inflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetDictionary' mangled-name='zng_inflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-43' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-100' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSetDictionary' mangled-name='zng_inflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetHeader' mangled-name='zng_inflateGetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateGetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <parameter type-id='type-id-17' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSync' mangled-name='zng_inflateSync' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSync@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSyncPoint' mangled-name='zng_inflateSyncPoint' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSyncPoint@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateCopy' mangled-name='zng_inflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-14' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateUndermine' mangled-name='zng_inflateUndermine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateUndermine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <parameter type-id='type-id-34' name='subvert' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateValidate' mangled-name='zng_inflateValidate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateValidate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <parameter type-id='type-id-34' name='check' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateMark' mangled-name='zng_inflateMark' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateMark@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1'/>
+ <return type-id='type-id-166'/>
+ </function-decl>
+ <function-decl name='zng_inflateCodesUsed' mangled-name='zng_inflateCodesUsed' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateCodesUsed@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-167' size-in-bits='9216' id='type-id-168'>
+ <subrange length='288' type-id='type-id-3' id='type-id-143'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-167' size-in-bits='960' id='type-id-169'>
+ <subrange length='30' type-id='type-id-3' id='type-id-170'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-171' size-in-bits='928' id='type-id-172'>
+ <subrange length='29' type-id='type-id-3' id='type-id-173'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-171' size-in-bits='960' id='type-id-174'>
+ <subrange length='30' type-id='type-id-3' id='type-id-170'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='2048' id='type-id-175'>
+ <subrange length='256' type-id='type-id-3' id='type-id-176'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='4096' id='type-id-177'>
+ <subrange length='512' type-id='type-id-3' id='type-id-178'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-73' const='yes' id='type-id-167'/>
+ <qualified-type-def type-id='type-id-16' const='yes' id='type-id-171'/>
+ <var-decl name='static_ltree' type-id='type-id-168' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='14' column='1'/>
+ <var-decl name='static_dtree' type-id='type-id-169' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='15' column='1'/>
+ <var-decl name='zng_dist_code' type-id='type-id-177' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='17' column='1'/>
+ <var-decl name='zng_length_code' type-id='type-id-175' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='18' column='1'/>
+ <var-decl name='base_length' type-id='type-id-172' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='20' column='1'/>
+ <var-decl name='base_dist' type-id='type-id-174' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='21' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_uncompress2' mangled-name='zng_uncompress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_uncompress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-53' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_uncompress' mangled-name='zng_uncompress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_uncompress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-179' size-in-bits='320' id='type-id-180'>
+ <subrange length='10' type-id='type-id-3' id='type-id-181'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-51' size-in-bits='304' id='type-id-182'>
+ <subrange length='38' type-id='type-id-3' id='type-id-183'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-44' const='yes' id='type-id-179'/>
+ <pointer-type-def type-id='type-id-46' size-in-bits='32' id='type-id-184'/>
+ <var-decl name='zng_vstring' type-id='type-id-182' mangled-name='zng_vstring' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='23' column='1' elf-symbol-id='zng_vstring@@ZLIB_NG_2.0.0'/>
+ <function-decl name='zlibng_version' mangled-name='zlibng_version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='31' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibng_version@@ZLIB_NG_2.1.0'>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <function-decl name='zng_zlibCompileFlags' mangled-name='zng_zlibCompileFlags' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='36' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_zlibCompileFlags@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ <function-decl name='zng_zError' mangled-name='zng_zError' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_zError@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='err' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1'/>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <var-decl name='zng_z_errmsg' type-id='type-id-180' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='24' column='1'/>
+ <function-decl name='free' filepath='/usr/powerpc-linux-gnu/include/stdlib.h' line='555' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='posix_memalign' filepath='/usr/powerpc-linux-gnu/include/stdlib.h' line='586' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-184'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/power' language='LANG_C11'>
+ <var-decl name='power_cpu_has_altivec' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='10' column='1'/>
+ <var-decl name='power_cpu_has_arch_2_07' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='11' column='1'/>
+ <var-decl name='power_cpu_has_arch_3_00' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='12' column='1'/>
+ <function-decl name='getauxval' filepath='/usr/powerpc-linux-gnu/include/sys/auxv.h' line='31' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-31'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1344' is-struct='yes' naming-typedef-id='type-id-185' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='102' column='1' id='type-id-186'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-134' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='mode' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='fd' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='path' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='want' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='in' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='out' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='direct' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='how' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='start' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='eof' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='past' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='level' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='strategy' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='reset' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='skip' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='seek' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='err' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='msg' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='strm' type-id='type-id-47' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='133' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gz_state' type-id='type-id-186' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='134' column='1' id='type-id-185'/>
+ <typedef-decl name='__ssize_t' type-id='type-id-16' filepath='/usr/powerpc-linux-gnu/include/bits/types.h' line='194' column='1' id='type-id-187'/>
+ <typedef-decl name='ssize_t' type-id='type-id-187' filepath='/usr/powerpc-linux-gnu/include/stdio.h' line='77' column='1' id='type-id-138'/>
+ <pointer-type-def type-id='type-id-185' size-in-bits='32' id='type-id-188'/>
+ <function-decl name='zng_gzread' mangled-name='zng_gzread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzfread' mangled-name='zng_gzfread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzfread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-42' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-42' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_gzgetc' mangled-name='zng_gzgetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzgetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzungetc' mangled-name='zng_gzungetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzungetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-16' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzgets' mangled-name='zng_gzgets' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzgets@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-32' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-16' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='zng_gzdirect' mangled-name='zng_gzdirect' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzdirect@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='138' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-188'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-44'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='__read_chk' filepath='/usr/powerpc-linux-gnu/include/bits/unistd.h' line='23' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-138'/>
+ </function-decl>
+ <function-decl name='__errno_location' filepath='/usr/powerpc-linux-gnu/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-135'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/powerpc-linux-gnu/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/powerpc-linux-gnu/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/powerpc-linux-gnu/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc64-unknown-linux-gnu.abi b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc64-unknown-linux-gnu.abi
new file mode 100644
index 0000000000..1d97902bc5
--- /dev/null
+++ b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc64-unknown-linux-gnu.abi
@@ -0,0 +1,1894 @@
+<abi-corpus version='2.0' path='btmp1/libz-ng.so.2.1.0.devel' architecture='elf-powerpc-64' soname='libz-ng.so.2'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld64.so.1'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='zlibng_version' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compressBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_gen' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_op' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePending' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateTune' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_get_crc_table' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzbuffer' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclearerr' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_r' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_w' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdirect' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzeof' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzerror' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzflush' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgets' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzoffset' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputs' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzrewind' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzseek' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzsetparams' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gztell' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzungetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzvprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBack' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCodesUsed' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateMark' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSync' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSyncPoint' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateUndermine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateValidate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zError' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zlibCompileFlags' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <elf-variable-symbols>
+ <elf-symbol name='zng_vstring' size='38' version='ZLIB_NG_2.0.0' is-default-version='yes' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-variable-symbols>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-4'/>
+ <type-decl name='void' id='type-id-5'/>
+ <typedef-decl name='size_t' type-id='type-id-4' filepath='/usr/lib/gcc-cross/powerpc64-linux-gnu/11/include/stddef.h' line='209' column='1' id='type-id-6'/>
+ <typedef-decl name='uint32_t' type-id='type-id-7' filepath='/usr/powerpc64-linux-gnu/include/bits/stdint-uintn.h' line='26' column='1' id='type-id-8'/>
+ <typedef-decl name='__uint32_t' type-id='type-id-3' filepath='/usr/powerpc64-linux-gnu/include/bits/types.h' line='42' column='1' id='type-id-7'/>
+ <typedef-decl name='__off64_t' type-id='type-id-1' filepath='/usr/powerpc64-linux-gnu/include/bits/types.h' line='153' column='1' id='type-id-9'/>
+ <typedef-decl name='off64_t' type-id='type-id-9' filepath='/usr/powerpc64-linux-gnu/include/sys/types.h' line='92' column='1' id='type-id-10'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-11'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-12'/>
+ <function-decl name='zng_adler32_z' mangled-name='zng_adler32_z' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32_z@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <parameter type-id='type-id-12' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_adler32' mangled-name='zng_adler32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-12' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-8' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_adler32_combine' mangled-name='zng_adler32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='adler1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-8' name='adler2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-10' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-13'/>
+ <class-decl name='internal_state' size-in-bits='48512' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='113' column='1' id='type-id-14'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_buf' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_out' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='pending_buf_size' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='pending' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='wrap' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='gzindex' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='gzhead' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='status' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='last_flush' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='reproducible' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='block_open' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='w_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='w_bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='w_mask' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='lookahead' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='high_water' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='window_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='window' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='150' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='prev' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='head' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='ins_h' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='168' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='block_start' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='170' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='match_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='175' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='prev_match' type-id='type-id-20' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='176' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='match_available' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='strstart' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='match_start' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='prev_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='max_chain_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='max_lazy_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='update_hash' type-id='type-id-21' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='201' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='insert_string' type-id='type-id-22' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='quick_insert_string' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='level' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='207' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='strategy' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='208' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='good_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='nice_match' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='213' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='crc_fold' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='215' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='2080'>
+ <var-decl name='dyn_ltree' type-id='type-id-25' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='219' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20416'>
+ <var-decl name='dyn_dtree' type-id='type-id-26' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22368'>
+ <var-decl name='bl_tree' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='221' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23616'>
+ <var-decl name='l_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='223' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23808'>
+ <var-decl name='d_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='224' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24000'>
+ <var-decl name='bl_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='225' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24192'>
+ <var-decl name='bl_count' type-id='type-id-29' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='227' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24448'>
+ <var-decl name='heap' type-id='type-id-30' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='230' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42784'>
+ <var-decl name='heap_len' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='231' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42816'>
+ <var-decl name='heap_max' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='232' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42848'>
+ <var-decl name='depth' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='237' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47456'>
+ <var-decl name='lit_bufsize' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='241' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47488'>
+ <var-decl name='sym_buf' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='261' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47552'>
+ <var-decl name='sym_next' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='262' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47584'>
+ <var-decl name='sym_end' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='263' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47616'>
+ <var-decl name='opt_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='265' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47680'>
+ <var-decl name='static_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='266' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47744'>
+ <var-decl name='matches' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='267' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47776'>
+ <var-decl name='insert' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='268' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47808'>
+ <var-decl name='compressed_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='271' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47872'>
+ <var-decl name='bits_sent' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='272' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47936'>
+ <var-decl name='reserved_p' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='275' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48000'>
+ <var-decl name='bi_buf' type-id='type-id-33' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='277' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48064'>
+ <var-decl name='bi_valid' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='280' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48096'>
+ <var-decl name='reserved' type-id='type-id-35' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='284' column='1'/>
+ </data-member>
+ </class-decl>
+ <type-decl name='int' size-in-bits='32' id='type-id-17'/>
+ <typedef-decl name='alloc_func' type-id='type-id-36' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='93' column='1' id='type-id-37'/>
+ <typedef-decl name='free_func' type-id='type-id-38' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='94' column='1' id='type-id-39'/>
+ <class-decl name='zng_stream_s' size-in-bits='832' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='98' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-41' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='avail_in' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='total_in' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='next_out' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='avail_out' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total_out' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='msg' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='state' type-id='type-id-44' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='zalloc' type-id='type-id-37' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='zfree' type-id='type-id-39' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='opaque' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='data_type' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='adler' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reserved' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='117' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_stream' type-id='type-id-40' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='118' column='1' id='type-id-46'/>
+ <typedef-decl name='int32_t' type-id='type-id-47' filepath='/usr/powerpc64-linux-gnu/include/bits/stdint-intn.h' line='26' column='1' id='type-id-34'/>
+ <typedef-decl name='uint8_t' type-id='type-id-48' filepath='/usr/powerpc64-linux-gnu/include/bits/stdint-uintn.h' line='24' column='1' id='type-id-49'/>
+ <typedef-decl name='__uint8_t' type-id='type-id-2' filepath='/usr/powerpc64-linux-gnu/include/bits/types.h' line='38' column='1' id='type-id-48'/>
+ <typedef-decl name='__int32_t' type-id='type-id-17' filepath='/usr/powerpc64-linux-gnu/include/bits/types.h' line='41' column='1' id='type-id-47'/>
+ <qualified-type-def type-id='type-id-13' const='yes' id='type-id-50'/>
+ <pointer-type-def type-id='type-id-50' size-in-bits='64' id='type-id-43'/>
+ <qualified-type-def type-id='type-id-49' const='yes' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-51' size-in-bits='64' id='type-id-41'/>
+ <pointer-type-def type-id='type-id-14' size-in-bits='64' id='type-id-44'/>
+ <pointer-type-def type-id='type-id-6' size-in-bits='64' id='type-id-52'/>
+ <pointer-type-def type-id='type-id-49' size-in-bits='64' id='type-id-42'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-16'/>
+ <pointer-type-def type-id='type-id-53' size-in-bits='64' id='type-id-38'/>
+ <pointer-type-def type-id='type-id-5' size-in-bits='64' id='type-id-45'/>
+ <pointer-type-def type-id='type-id-54' size-in-bits='64' id='type-id-36'/>
+ <pointer-type-def type-id='type-id-46' size-in-bits='64' id='type-id-15'/>
+ <function-decl name='zng_compress2' mangled-name='zng_compress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-12' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-6' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <parameter type-id='type-id-17' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_compress' mangled-name='zng_compress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-12' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-6' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_compressBound' mangled-name='zng_compressBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compressBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit' mangled-name='zng_deflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='227' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflate' mangled-name='zng_deflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='248' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateEnd' mangled-name='zng_deflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='362' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-53'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-54'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='power_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='14' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <qualified-type-def type-id='type-id-8' const='yes' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-55' size-in-bits='64' id='type-id-56'/>
+ <function-decl name='zng_get_crc_table' mangled-name='zng_get_crc_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='18' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_get_crc_table@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-56'/>
+ </function-decl>
+ <function-decl name='zng_crc32_z' mangled-name='zng_crc32_z' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_z@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <parameter type-id='type-id-12' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_crc32' mangled-name='zng_crc32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-12' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-8' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_crc32_combine' mangled-name='zng_crc32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-8' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-10' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_gen' mangled-name='zng_crc32_combine_gen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine_gen@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-10' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_op' mangled-name='zng_crc32_combine_op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine_op@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-8' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-55' name='op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-57'/>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='1248' id='type-id-27'>
+ <subrange length='39' type-id='type-id-4' id='type-id-59'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='18336' id='type-id-25'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='1952' id='type-id-26'>
+ <subrange length='61' type-id='type-id-4' id='type-id-61'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-34' size-in-bits='352' id='type-id-35'>
+ <subrange length='11' type-id='type-id-4' id='type-id-62'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-17' size-in-bits='18336' id='type-id-30'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='256' id='type-id-29'>
+ <subrange length='16' type-id='type-id-4' id='type-id-64'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-49' size-in-bits='512' id='type-id-65'>
+ <subrange length='64' type-id='type-id-4' id='type-id-66'/>
+ </array-type-def>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-67'/>
+ <array-type-def dimensions='1' type-id='type-id-2' size-in-bits='4584' id='type-id-31'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-68'/>
+ <class-decl name='crc32_fold_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='11' column='1' id='type-id-24'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fold' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='12' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='value' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='13' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='77' column='1' id='type-id-58'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-69' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='81' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-70' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='85' column='1'/>
+ </data-member>
+ </class-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='78' column='1' id='type-id-69'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='79' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='80' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='82' column='1' id='type-id-70'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='83' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='84' column='1'/>
+ </data-member>
+ </union-decl>
+ <typedef-decl name='ct_data' type-id='type-id-58' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='86' column='1' id='type-id-71'/>
+ <typedef-decl name='static_tree_desc' type-id='type-id-57' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='93' column='1' id='type-id-72'/>
+ <class-decl name='tree_desc_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='95' column='1' id='type-id-28'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-73' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='max_code' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='stat_desc' type-id='type-id-74' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='98' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='Pos' type-id='type-id-63' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='101' column='1' id='type-id-20'/>
+ <typedef-decl name='deflate_state' type-id='type-id-14' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='107' column='1' id='type-id-75'/>
+ <typedef-decl name='update_hash_cb' type-id='type-id-76' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='109' column='1' id='type-id-21'/>
+ <typedef-decl name='insert_string_cb' type-id='type-id-77' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='110' column='1' id='type-id-22'/>
+ <typedef-decl name='quick_insert_string_cb' type-id='type-id-78' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='111' column='1' id='type-id-23'/>
+ <enum-decl name='block_state' naming-typedef-id='type-id-79' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='287' column='1' id='type-id-80'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='need_more' value='0'/>
+ <enumerator name='block_done' value='1'/>
+ <enumerator name='finish_started' value='2'/>
+ <enumerator name='finish_done' value='3'/>
+ </enum-decl>
+ <typedef-decl name='block_state' type-id='type-id-80' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='292' column='1' id='type-id-79'/>
+ <typedef-decl name='zng_calloc_func' type-id='type-id-54' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='132' column='1' id='type-id-81'/>
+ <typedef-decl name='zng_cfree_func' type-id='type-id-53' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='133' column='1' id='type-id-82'/>
+ <class-decl name='zng_gz_header_s' size-in-bits='640' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='126' column='1' id='type-id-83'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='time' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='xflags' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='os' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='extra_len' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='extra_max' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='name' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='name_max' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='comment' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='comm_max' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='137' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='hcrc' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='done' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='139' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_gz_header' type-id='type-id-83' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='140' column='1' id='type-id-84'/>
+ <typedef-decl name='zng_gz_headerp' type-id='type-id-85' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='142' column='1' id='type-id-18'/>
+ <enum-decl name='zng_deflate_param' naming-typedef-id='type-id-86' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1800' column='1' id='type-id-87'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='Z_DEFLATE_LEVEL' value='0'/>
+ <enumerator name='Z_DEFLATE_STRATEGY' value='1'/>
+ <enumerator name='Z_DEFLATE_REPRODUCIBLE' value='2'/>
+ </enum-decl>
+ <typedef-decl name='zng_deflate_param' type-id='type-id-87' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1810' column='1' id='type-id-86'/>
+ <class-decl name='zng_deflate_param_value' size-in-bits='256' is-struct='yes' naming-typedef-id='type-id-88' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1812' column='1' id='type-id-89'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='param' type-id='type-id-86' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1813' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='buf' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1814' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='size' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1815' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='status' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1816' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_deflate_param_value' type-id='type-id-89' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1817' column='1' id='type-id-88'/>
+ <typedef-decl name='uint16_t' type-id='type-id-90' filepath='/usr/powerpc64-linux-gnu/include/bits/stdint-uintn.h' line='25' column='1' id='type-id-63'/>
+ <typedef-decl name='uint64_t' type-id='type-id-91' filepath='/usr/powerpc64-linux-gnu/include/bits/stdint-uintn.h' line='27' column='1' id='type-id-33'/>
+ <typedef-decl name='__uint16_t' type-id='type-id-68' filepath='/usr/powerpc64-linux-gnu/include/bits/types.h' line='40' column='1' id='type-id-90'/>
+ <typedef-decl name='__uint64_t' type-id='type-id-4' filepath='/usr/powerpc64-linux-gnu/include/bits/types.h' line='45' column='1' id='type-id-91'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-32'/>
+ <qualified-type-def type-id='type-id-72' const='yes' id='type-id-92'/>
+ <pointer-type-def type-id='type-id-92' size-in-bits='64' id='type-id-74'/>
+ <pointer-type-def type-id='type-id-71' size-in-bits='64' id='type-id-73'/>
+ <pointer-type-def type-id='type-id-75' size-in-bits='64' id='type-id-93'/>
+ <qualified-type-def type-id='type-id-93' const='yes' id='type-id-94'/>
+ <pointer-type-def type-id='type-id-34' size-in-bits='64' id='type-id-95'/>
+ <pointer-type-def type-id='type-id-96' size-in-bits='64' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-97' size-in-bits='64' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-8' size-in-bits='64' id='type-id-98'/>
+ <pointer-type-def type-id='type-id-99' size-in-bits='64' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-81' size-in-bits='64' id='type-id-100'/>
+ <pointer-type-def type-id='type-id-82' size-in-bits='64' id='type-id-101'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='64' id='type-id-102'/>
+ <pointer-type-def type-id='type-id-84' size-in-bits='64' id='type-id-85'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-57'/>
+ <function-decl name='cpu_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='23' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='deflate_stored' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='111' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_fast' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='112' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_quick' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='113' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_medium' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='115' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_slow' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='117' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_rle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='118' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_huff' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='update_hash_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='124' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='125' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='126' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2' mangled-name='zng_deflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit_' mangled-name='zng_deflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2_' mangled-name='zng_deflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetDictionary' mangled-name='zng_deflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-8' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetDictionary' mangled-name='zng_deflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-42' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-98' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateResetKeep' mangled-name='zng_deflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateReset' mangled-name='zng_deflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetHeader' mangled-name='zng_deflateSetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <parameter type-id='type-id-18' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePending' mangled-name='zng_deflatePending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflatePending@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-98' name='pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-95' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePrime' mangled-name='zng_deflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateParams' mangled-name='zng_deflateParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateTune' mangled-name='zng_deflateTune' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateTune@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='good_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_lazy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='nice_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_chain' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateBound' mangled-name='zng_deflateBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <parameter type-id='type-id-4' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_deflateCopy' mangled-name='zng_deflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <parameter type-id='type-id-15' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetParams' mangled-name='zng_deflateSetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-102' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-6' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetParams' mangled-name='zng_deflateGetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateGetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-102' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-6' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_tr_init' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='380' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='382' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_tr_align' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='383' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_tr_stored_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='384' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_zcalloc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='129' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='zng_zcfree' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='130' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_alloc_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='135' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-100'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='zng_free_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='136' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-101'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-96'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-97'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-99'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_fast.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_fill_window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='376' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='381' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_flush_pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='50' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_quick.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='memcmp' filepath='/usr/powerpc64-linux-gnu/include/string.h' line='64' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_stored.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_read_buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='51' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-3'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='crc32_fold' type-id='type-id-24' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='14' column='1' id='type-id-103'/>
+ <class-decl name='functable_s' size-in-bits='1088' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='19' column='1' id='type-id-104'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='adler32' type-id='type-id-105' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='adler32_fold_copy' type-id='type-id-106' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='crc32' type-id='type-id-105' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='crc32_fold_reset' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='crc32_fold_copy' type-id='type-id-108' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='crc32_fold' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='crc32_fold_final' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='compare256' type-id='type-id-110' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='chunksize' type-id='type-id-111' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='chunkmemset_safe' type-id='type-id-112' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='inflate_fast' type-id='type-id-113' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='insert_string' type-id='type-id-77' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='longest_match' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='32' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='longest_match_slow' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='quick_insert_string' type-id='type-id-78' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='slide_hash' type-id='type-id-115' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='update_hash' type-id='type-id-76' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='36' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-103' size-in-bits='64' id='type-id-116'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-117'/>
+ <pointer-type-def type-id='type-id-118' size-in-bits='64' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-119' size-in-bits='64' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-120' size-in-bits='64' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-121' size-in-bits='64' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-122' size-in-bits='64' id='type-id-105'/>
+ <pointer-type-def type-id='type-id-123' size-in-bits='64' id='type-id-106'/>
+ <pointer-type-def type-id='type-id-124' size-in-bits='64' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-125' size-in-bits='64' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-126' size-in-bits='64' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-127' size-in-bits='64' id='type-id-115'/>
+ <pointer-type-def type-id='type-id-128' size-in-bits='64' id='type-id-113'/>
+ <function-decl name='adler32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.h' line='9' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='adler32_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='28' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='adler32_vmx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='33' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='adler32_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='48' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='chunksize_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='75' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='76' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='chunksize_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='93' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='94' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='inflate_fast_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='104' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='inflate_fast_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='118' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_crc32_braid' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='124' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='crc32_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='128' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='compare256_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='136' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='compare256_power9' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='156' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='161' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='longest_match_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='169' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='longest_match_power9' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='189' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='193' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_power9' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='211' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='215' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='slide_hash_vmx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='231' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='slide_hash_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='234' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='update_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='241' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='crc32_fold_reset_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='16' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='crc32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='17' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='crc32_fold_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='18' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='crc32_fold_final_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='19' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='slide_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='377' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <var-decl name='functable' type-id='type-id-104' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='39' column='1'/>
+ <function-type size-in-bits='64' id='type-id-118'>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-119'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-120'>
+ <parameter type-id='type-id-117'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-121'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-122'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-123'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-124'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-125'>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-126'>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-127'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-128'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='variadic parameter type' id='type-id-129'/>
+ <typedef-decl name='gzFile' type-id='type-id-130' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1285' column='1' id='type-id-131'/>
+ <class-decl name='gzFile_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1790' column='1' id='type-id-132'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1791' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='next' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1792' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pos' type-id='type-id-10' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1793' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-132' size-in-bits='64' id='type-id-130'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-133'/>
+ <function-decl name='zng_gzopen' mangled-name='zng_gzopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-43' name='path' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <parameter type-id='type-id-43' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <return type-id='type-id-131'/>
+ </function-decl>
+ <function-decl name='zng_gzdopen' mangled-name='zng_gzdopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzdopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-17' name='fd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <parameter type-id='type-id-43' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <return type-id='type-id-131'/>
+ </function-decl>
+ <function-decl name='zng_gzclose' mangled-name='zng_gzclose' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzbuffer' mangled-name='zng_gzbuffer' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzbuffer@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <parameter type-id='type-id-3' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzrewind' mangled-name='zng_gzrewind' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzrewind@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzseek' mangled-name='zng_gzseek' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzseek@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-10' name='offset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-17' name='whence' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='zng_gztell' mangled-name='zng_gztell' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gztell@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='zng_gzoffset' mangled-name='zng_gzoffset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzoffset@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='zng_gzeof' mangled-name='zng_gzeof' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzeof@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzerror' mangled-name='zng_gzerror' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzerror@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <parameter type-id='type-id-133' name='errnum' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='zng_gzclearerr' mangled-name='zng_gzclearerr' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclearerr@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_r' mangled-name='zng_gzclose_r' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1641' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose_r@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_w' mangled-name='zng_gzclose_w' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1643' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose_w@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='__open_2' filepath='/usr/powerpc64-linux-gnu/include/bits/fcntl2.h' line='26' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='__open_too_many_args' filepath='/usr/powerpc64-linux-gnu/include/bits/fcntl2.h' line='35' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='__open_missing_mode' filepath='/usr/powerpc64-linux-gnu/include/bits/fcntl2.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/powerpc64-linux-gnu/include/stdlib.h' line='540' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/powerpc64-linux-gnu/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-43'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/powerpc64-linux-gnu/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-32' filepath='/usr/lib/gcc-cross/powerpc64-linux-gnu/11/include/stdarg.h' line='40' column='1' id='type-id-134'/>
+ <typedef-decl name='va_list' type-id='type-id-134' filepath='/usr/lib/gcc-cross/powerpc64-linux-gnu/11/include/stdarg.h' line='99' column='1' id='type-id-135'/>
+ <function-decl name='zng_gzwrite' mangled-name='zng_gzwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzfwrite' mangled-name='zng_gzfwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzfwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-6' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-6' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_gzputc' mangled-name='zng_gzputc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzputc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <parameter type-id='type-id-17' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzputs' mangled-name='zng_gzputs' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzputs@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <parameter type-id='type-id-43' name='s' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzvprintf' mangled-name='zng_gzvprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzvprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-43' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-135' name='va' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzprintf' mangled-name='zng_gzprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter type-id='type-id-43' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzflush' mangled-name='zng_gzflush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzflush@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <parameter type-id='type-id-17' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzsetparams' mangled-name='zng_gzsetparams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzsetparams@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-17' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-17' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/powerpc64-linux-gnu/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-136'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-137' size-in-bits='61568' id='type-id-138'>
+ <subrange length='1924' type-id='type-id-4' id='type-id-139'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='4608' id='type-id-140'>
+ <subrange length='288' type-id='type-id-4' id='type-id-141'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='5120' id='type-id-142'>
+ <subrange length='320' type-id='type-id-4' id='type-id-143'/>
+ </array-type-def>
+ <enum-decl name='inflate_mode' naming-typedef-id='type-id-144' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='25' column='1' id='type-id-145'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='HEAD' value='16180'/>
+ <enumerator name='FLAGS' value='16181'/>
+ <enumerator name='TIME' value='16182'/>
+ <enumerator name='OS' value='16183'/>
+ <enumerator name='EXLEN' value='16184'/>
+ <enumerator name='EXTRA' value='16185'/>
+ <enumerator name='NAME' value='16186'/>
+ <enumerator name='COMMENT' value='16187'/>
+ <enumerator name='HCRC' value='16188'/>
+ <enumerator name='DICTID' value='16189'/>
+ <enumerator name='DICT' value='16190'/>
+ <enumerator name='TYPE' value='16191'/>
+ <enumerator name='TYPEDO' value='16192'/>
+ <enumerator name='STORED' value='16193'/>
+ <enumerator name='COPY_' value='16194'/>
+ <enumerator name='COPY' value='16195'/>
+ <enumerator name='TABLE' value='16196'/>
+ <enumerator name='LENLENS' value='16197'/>
+ <enumerator name='CODELENS' value='16198'/>
+ <enumerator name='LEN_' value='16199'/>
+ <enumerator name='LEN' value='16200'/>
+ <enumerator name='LENEXT' value='16201'/>
+ <enumerator name='DIST' value='16202'/>
+ <enumerator name='DISTEXT' value='16203'/>
+ <enumerator name='MATCH' value='16204'/>
+ <enumerator name='LIT' value='16205'/>
+ <enumerator name='CHECK' value='16206'/>
+ <enumerator name='LENGTH' value='16207'/>
+ <enumerator name='DONE' value='16208'/>
+ <enumerator name='BAD' value='16209'/>
+ <enumerator name='MEM' value='16210'/>
+ <enumerator name='SYNC' value='16211'/>
+ </enum-decl>
+ <typedef-decl name='inflate_mode' type-id='type-id-145' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='58' column='1' id='type-id-144'/>
+ <class-decl name='inflate_state' size-in-bits='73216' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='87' column='1' id='type-id-146'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='mode' type-id='type-id-144' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='last' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='90' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='wrap' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='havedict' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='flags' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='94' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='dmax' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='check' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='head' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='wbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='wsize' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='whave' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='wnext' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='window' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='crc_fold' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='hold' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1248'>
+ <var-decl name='length' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='offset' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='extra' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='lencode' type-id='type-id-147' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='distcode' type-id='type-id-147' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='lenbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='distbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='ncode' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1568'>
+ <var-decl name='nlen' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1600'>
+ <var-decl name='ndist' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1632'>
+ <var-decl name='have' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1664'>
+ <var-decl name='next' type-id='type-id-148' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1728'>
+ <var-decl name='lens' type-id='type-id-142' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='6848'>
+ <var-decl name='work' type-id='type-id-140' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='11456'>
+ <var-decl name='codes' type-id='type-id-138' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73024'>
+ <var-decl name='sane' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73056'>
+ <var-decl name='back' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73088'>
+ <var-decl name='was' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73120'>
+ <var-decl name='chunksize' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='134' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-137' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='27' column='1' id='type-id-149'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='30' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-149' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='31' column='1' id='type-id-137'/>
+ <enum-decl name='codetype' naming-typedef-id='type-id-150' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='57' column='1' id='type-id-151'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <typedef-decl name='codetype' type-id='type-id-151' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='61' column='1' id='type-id-150'/>
+ <typedef-decl name='in_func' type-id='type-id-152' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1075' column='1' id='type-id-153'/>
+ <typedef-decl name='out_func' type-id='type-id-154' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1076' column='1' id='type-id-155'/>
+ <pointer-type-def type-id='type-id-137' size-in-bits='64' id='type-id-148'/>
+ <pointer-type-def type-id='type-id-148' size-in-bits='64' id='type-id-156'/>
+ <qualified-type-def type-id='type-id-137' const='yes' id='type-id-157'/>
+ <pointer-type-def type-id='type-id-157' size-in-bits='64' id='type-id-147'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='64' id='type-id-158'/>
+ <pointer-type-def type-id='type-id-146' size-in-bits='64' id='type-id-159'/>
+ <pointer-type-def type-id='type-id-160' size-in-bits='64' id='type-id-154'/>
+ <pointer-type-def type-id='type-id-161' size-in-bits='64' id='type-id-152'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-162'/>
+ <pointer-type-def type-id='type-id-3' size-in-bits='64' id='type-id-163'/>
+ <function-decl name='zng_inflateBackInit' mangled-name='zng_inflateBackInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-42' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackInit_' mangled-name='zng_inflateBackInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-42' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBack' mangled-name='zng_inflateBack' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBack@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-153' name='in' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-45' name='in_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-155' name='out' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-45' name='out_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackEnd' mangled-name='zng_inflateBackEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_fixedtables' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='138' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-159'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_inflate_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='63' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-150'/>
+ <parameter type-id='type-id-162'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-156'/>
+ <parameter type-id='type-id-163'/>
+ <parameter type-id='type-id-162'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-160'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-34'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-161'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-158'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_inflateResetKeep' mangled-name='zng_inflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset' mangled-name='zng_inflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset2' mangled-name='zng_inflateReset2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateReset2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2' mangled-name='zng_inflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit' mangled-name='zng_inflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit_' mangled-name='zng_inflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2_' mangled-name='zng_inflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflatePrime' mangled-name='zng_inflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflate' mangled-name='zng_inflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-34' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateEnd' mangled-name='zng_inflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetDictionary' mangled-name='zng_inflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-42' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-98' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSetDictionary' mangled-name='zng_inflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-8' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetHeader' mangled-name='zng_inflateGetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateGetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <parameter type-id='type-id-18' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSync' mangled-name='zng_inflateSync' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSync@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSyncPoint' mangled-name='zng_inflateSyncPoint' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSyncPoint@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateCopy' mangled-name='zng_inflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-15' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateUndermine' mangled-name='zng_inflateUndermine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateUndermine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <parameter type-id='type-id-34' name='subvert' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateValidate' mangled-name='zng_inflateValidate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateValidate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <parameter type-id='type-id-34' name='check' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateMark' mangled-name='zng_inflateMark' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateMark@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='zng_inflateCodesUsed' mangled-name='zng_inflateCodesUsed' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateCodesUsed@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-164' size-in-bits='9216' id='type-id-165'>
+ <subrange length='288' type-id='type-id-4' id='type-id-141'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-164' size-in-bits='960' id='type-id-166'>
+ <subrange length='30' type-id='type-id-4' id='type-id-167'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-168' size-in-bits='928' id='type-id-169'>
+ <subrange length='29' type-id='type-id-4' id='type-id-170'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-168' size-in-bits='960' id='type-id-171'>
+ <subrange length='30' type-id='type-id-4' id='type-id-167'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-11' size-in-bits='2048' id='type-id-172'>
+ <subrange length='256' type-id='type-id-4' id='type-id-173'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-11' size-in-bits='4096' id='type-id-174'>
+ <subrange length='512' type-id='type-id-4' id='type-id-175'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-71' const='yes' id='type-id-164'/>
+ <qualified-type-def type-id='type-id-17' const='yes' id='type-id-168'/>
+ <var-decl name='static_ltree' type-id='type-id-165' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='14' column='1'/>
+ <var-decl name='static_dtree' type-id='type-id-166' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='15' column='1'/>
+ <var-decl name='zng_dist_code' type-id='type-id-174' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='17' column='1'/>
+ <var-decl name='zng_length_code' type-id='type-id-172' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='18' column='1'/>
+ <var-decl name='base_length' type-id='type-id-169' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='20' column='1'/>
+ <var-decl name='base_dist' type-id='type-id-171' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='21' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_uncompress2' mangled-name='zng_uncompress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_uncompress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-12' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-52' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_uncompress' mangled-name='zng_uncompress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_uncompress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-12' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-6' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-176' size-in-bits='640' id='type-id-177'>
+ <subrange length='10' type-id='type-id-4' id='type-id-178'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='304' id='type-id-179'>
+ <subrange length='38' type-id='type-id-4' id='type-id-180'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-43' const='yes' id='type-id-176'/>
+ <pointer-type-def type-id='type-id-45' size-in-bits='64' id='type-id-181'/>
+ <var-decl name='zng_vstring' type-id='type-id-179' mangled-name='zng_vstring' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='23' column='1' elf-symbol-id='zng_vstring@@ZLIB_NG_2.0.0'/>
+ <function-decl name='zlibng_version' mangled-name='zlibng_version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibng_version@@ZLIB_NG_2.1.0'>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='zng_zlibCompileFlags' mangled-name='zng_zlibCompileFlags' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='36' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_zlibCompileFlags@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_zError' mangled-name='zng_zError' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_zError@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-17' name='err' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <var-decl name='zng_z_errmsg' type-id='type-id-177' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='24' column='1'/>
+ <function-decl name='free' filepath='/usr/powerpc64-linux-gnu/include/stdlib.h' line='555' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='posix_memalign' filepath='/usr/powerpc64-linux-gnu/include/stdlib.h' line='586' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-181'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/power' language='LANG_C11'>
+ <var-decl name='power_cpu_has_altivec' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='10' column='1'/>
+ <var-decl name='power_cpu_has_arch_2_07' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='11' column='1'/>
+ <var-decl name='power_cpu_has_arch_3_00' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='12' column='1'/>
+ <function-decl name='getauxval' filepath='/usr/powerpc64-linux-gnu/include/sys/auxv.h' line='31' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-4'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1856' is-struct='yes' naming-typedef-id='type-id-182' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='102' column='1' id='type-id-183'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-132' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='mode' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='fd' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='path' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='want' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='in' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='out' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='direct' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='how' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='start' type-id='type-id-10' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='eof' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='past' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='level' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='strategy' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reset' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='skip' type-id='type-id-10' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='seek' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='err' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='msg' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='strm' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='133' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gz_state' type-id='type-id-183' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='134' column='1' id='type-id-182'/>
+ <typedef-decl name='__ssize_t' type-id='type-id-1' filepath='/usr/powerpc64-linux-gnu/include/bits/types.h' line='194' column='1' id='type-id-184'/>
+ <typedef-decl name='ssize_t' type-id='type-id-184' filepath='/usr/powerpc64-linux-gnu/include/stdio.h' line='77' column='1' id='type-id-136'/>
+ <pointer-type-def type-id='type-id-182' size-in-bits='64' id='type-id-185'/>
+ <function-decl name='zng_gzread' mangled-name='zng_gzread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzfread' mangled-name='zng_gzfread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzfread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-6' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-6' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_gzgetc' mangled-name='zng_gzgetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzgetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzungetc' mangled-name='zng_gzungetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzungetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-17' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzgets' mangled-name='zng_gzgets' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzgets@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-32' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-17' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='zng_gzdirect' mangled-name='zng_gzdirect' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzdirect@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='138' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-185'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-43'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='__read_chk' filepath='/usr/powerpc64-linux-gnu/include/bits/unistd.h' line='23' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-136'/>
+ </function-decl>
+ <function-decl name='__errno_location' filepath='/usr/powerpc64-linux-gnu/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/powerpc64-linux-gnu/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/powerpc64-linux-gnu/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/powerpc64-linux-gnu/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc64le-unknown-linux-gnu.abi b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc64le-unknown-linux-gnu.abi
new file mode 100644
index 0000000000..613f5f2f6d
--- /dev/null
+++ b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-powerpc64le-unknown-linux-gnu.abi
@@ -0,0 +1,1886 @@
+<abi-corpus version='2.0' path='btmp1/libz-ng.so.2.1.0.devel' architecture='elf-powerpc-64' soname='libz-ng.so.2'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld64.so.2'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='zlibng_version' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compressBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_gen' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_op' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePending' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateTune' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_get_crc_table' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzbuffer' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclearerr' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_r' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_w' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdirect' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzeof' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzerror' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzflush' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgets' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzoffset' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputs' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzrewind' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzseek' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzsetparams' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gztell' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzungetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzvprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBack' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCodesUsed' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateMark' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSync' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSyncPoint' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateUndermine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateValidate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zError' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zlibCompileFlags' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <elf-variable-symbols>
+ <elf-symbol name='zng_vstring' size='38' version='ZLIB_NG_2.0.0' is-default-version='yes' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-variable-symbols>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-4'/>
+ <type-decl name='void' id='type-id-5'/>
+ <typedef-decl name='size_t' type-id='type-id-4' filepath='/usr/lib/gcc-cross/powerpc64le-linux-gnu/11/include/stddef.h' line='209' column='1' id='type-id-6'/>
+ <typedef-decl name='uint32_t' type-id='type-id-7' filepath='/usr/powerpc64le-linux-gnu/include/bits/stdint-uintn.h' line='26' column='1' id='type-id-8'/>
+ <typedef-decl name='__uint32_t' type-id='type-id-3' filepath='/usr/powerpc64le-linux-gnu/include/bits/types.h' line='42' column='1' id='type-id-7'/>
+ <typedef-decl name='__off64_t' type-id='type-id-1' filepath='/usr/powerpc64le-linux-gnu/include/bits/types.h' line='153' column='1' id='type-id-9'/>
+ <typedef-decl name='off64_t' type-id='type-id-9' filepath='/usr/powerpc64le-linux-gnu/include/sys/types.h' line='92' column='1' id='type-id-10'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-11'/>
+ <pointer-type-def type-id='type-id-11' size-in-bits='64' id='type-id-12'/>
+ <function-decl name='zng_adler32_z' mangled-name='zng_adler32_z' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32_z@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <parameter type-id='type-id-12' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_adler32' mangled-name='zng_adler32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-12' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-8' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_adler32_combine' mangled-name='zng_adler32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='adler1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-8' name='adler2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-10' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-13'/>
+ <class-decl name='internal_state' size-in-bits='48512' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='113' column='1' id='type-id-14'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_buf' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_out' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='pending_buf_size' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='pending' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='wrap' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='gzindex' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='gzhead' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='status' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='last_flush' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='reproducible' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='block_open' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='w_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='w_bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='w_mask' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='lookahead' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='high_water' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='window_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='window' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='150' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='prev' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='head' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='ins_h' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='168' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='block_start' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='170' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='match_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='175' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='prev_match' type-id='type-id-20' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='176' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='match_available' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='strstart' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='match_start' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='prev_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='max_chain_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='max_lazy_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='update_hash' type-id='type-id-21' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='201' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='insert_string' type-id='type-id-22' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='quick_insert_string' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='level' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='207' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='strategy' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='208' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='good_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='nice_match' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='213' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='crc_fold' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='215' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='2080'>
+ <var-decl name='dyn_ltree' type-id='type-id-25' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='219' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20416'>
+ <var-decl name='dyn_dtree' type-id='type-id-26' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22368'>
+ <var-decl name='bl_tree' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='221' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23616'>
+ <var-decl name='l_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='223' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23808'>
+ <var-decl name='d_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='224' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24000'>
+ <var-decl name='bl_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='225' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24192'>
+ <var-decl name='bl_count' type-id='type-id-29' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='227' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24448'>
+ <var-decl name='heap' type-id='type-id-30' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='230' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42784'>
+ <var-decl name='heap_len' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='231' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42816'>
+ <var-decl name='heap_max' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='232' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42848'>
+ <var-decl name='depth' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='237' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47456'>
+ <var-decl name='lit_bufsize' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='241' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47488'>
+ <var-decl name='sym_buf' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='261' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47552'>
+ <var-decl name='sym_next' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='262' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47584'>
+ <var-decl name='sym_end' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='263' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47616'>
+ <var-decl name='opt_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='265' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47680'>
+ <var-decl name='static_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='266' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47744'>
+ <var-decl name='matches' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='267' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47776'>
+ <var-decl name='insert' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='268' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47808'>
+ <var-decl name='compressed_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='271' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47872'>
+ <var-decl name='bits_sent' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='272' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47936'>
+ <var-decl name='reserved_p' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='275' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48000'>
+ <var-decl name='bi_buf' type-id='type-id-33' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='277' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48064'>
+ <var-decl name='bi_valid' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='280' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48096'>
+ <var-decl name='reserved' type-id='type-id-35' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='284' column='1'/>
+ </data-member>
+ </class-decl>
+ <type-decl name='int' size-in-bits='32' id='type-id-17'/>
+ <typedef-decl name='alloc_func' type-id='type-id-36' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='93' column='1' id='type-id-37'/>
+ <typedef-decl name='free_func' type-id='type-id-38' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='94' column='1' id='type-id-39'/>
+ <class-decl name='zng_stream_s' size-in-bits='832' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='98' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-41' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='avail_in' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='total_in' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='next_out' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='avail_out' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total_out' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='msg' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='state' type-id='type-id-44' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='zalloc' type-id='type-id-37' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='zfree' type-id='type-id-39' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='opaque' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='data_type' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='adler' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reserved' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='117' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_stream' type-id='type-id-40' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='118' column='1' id='type-id-46'/>
+ <typedef-decl name='int32_t' type-id='type-id-47' filepath='/usr/powerpc64le-linux-gnu/include/bits/stdint-intn.h' line='26' column='1' id='type-id-34'/>
+ <typedef-decl name='uint8_t' type-id='type-id-48' filepath='/usr/powerpc64le-linux-gnu/include/bits/stdint-uintn.h' line='24' column='1' id='type-id-49'/>
+ <typedef-decl name='__uint8_t' type-id='type-id-2' filepath='/usr/powerpc64le-linux-gnu/include/bits/types.h' line='38' column='1' id='type-id-48'/>
+ <typedef-decl name='__int32_t' type-id='type-id-17' filepath='/usr/powerpc64le-linux-gnu/include/bits/types.h' line='41' column='1' id='type-id-47'/>
+ <qualified-type-def type-id='type-id-13' const='yes' id='type-id-50'/>
+ <pointer-type-def type-id='type-id-50' size-in-bits='64' id='type-id-43'/>
+ <qualified-type-def type-id='type-id-49' const='yes' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-51' size-in-bits='64' id='type-id-41'/>
+ <pointer-type-def type-id='type-id-14' size-in-bits='64' id='type-id-44'/>
+ <pointer-type-def type-id='type-id-6' size-in-bits='64' id='type-id-52'/>
+ <pointer-type-def type-id='type-id-49' size-in-bits='64' id='type-id-42'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-16'/>
+ <pointer-type-def type-id='type-id-53' size-in-bits='64' id='type-id-38'/>
+ <pointer-type-def type-id='type-id-5' size-in-bits='64' id='type-id-45'/>
+ <pointer-type-def type-id='type-id-54' size-in-bits='64' id='type-id-36'/>
+ <pointer-type-def type-id='type-id-46' size-in-bits='64' id='type-id-15'/>
+ <function-decl name='zng_compress2' mangled-name='zng_compress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-12' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-6' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <parameter type-id='type-id-17' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_compress' mangled-name='zng_compress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-12' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-6' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_compressBound' mangled-name='zng_compressBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compressBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit' mangled-name='zng_deflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='227' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflate' mangled-name='zng_deflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='248' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateEnd' mangled-name='zng_deflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='362' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-53'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-54'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='power_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='14' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <qualified-type-def type-id='type-id-8' const='yes' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-55' size-in-bits='64' id='type-id-56'/>
+ <function-decl name='zng_get_crc_table' mangled-name='zng_get_crc_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='18' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_get_crc_table@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-56'/>
+ </function-decl>
+ <function-decl name='zng_crc32_z' mangled-name='zng_crc32_z' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_z@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <parameter type-id='type-id-12' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_crc32' mangled-name='zng_crc32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-12' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-8' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_crc32_combine' mangled-name='zng_crc32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-8' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-10' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_gen' mangled-name='zng_crc32_combine_gen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine_gen@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-10' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_op' mangled-name='zng_crc32_combine_op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine_op@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-8' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-55' name='op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-57'/>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='1248' id='type-id-27'>
+ <subrange length='39' type-id='type-id-4' id='type-id-59'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='18336' id='type-id-25'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='1952' id='type-id-26'>
+ <subrange length='61' type-id='type-id-4' id='type-id-61'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-34' size-in-bits='352' id='type-id-35'>
+ <subrange length='11' type-id='type-id-4' id='type-id-62'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-17' size-in-bits='18336' id='type-id-30'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='256' id='type-id-29'>
+ <subrange length='16' type-id='type-id-4' id='type-id-64'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-49' size-in-bits='512' id='type-id-65'>
+ <subrange length='64' type-id='type-id-4' id='type-id-66'/>
+ </array-type-def>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-67'/>
+ <array-type-def dimensions='1' type-id='type-id-2' size-in-bits='4584' id='type-id-31'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-68'/>
+ <class-decl name='crc32_fold_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='11' column='1' id='type-id-24'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fold' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='12' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='value' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='13' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='77' column='1' id='type-id-58'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-69' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='81' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-70' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='85' column='1'/>
+ </data-member>
+ </class-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='78' column='1' id='type-id-69'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='79' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='80' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='82' column='1' id='type-id-70'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='83' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='84' column='1'/>
+ </data-member>
+ </union-decl>
+ <typedef-decl name='ct_data' type-id='type-id-58' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='86' column='1' id='type-id-71'/>
+ <typedef-decl name='static_tree_desc' type-id='type-id-57' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='93' column='1' id='type-id-72'/>
+ <class-decl name='tree_desc_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='95' column='1' id='type-id-28'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-73' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='max_code' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='stat_desc' type-id='type-id-74' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='98' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='Pos' type-id='type-id-63' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='101' column='1' id='type-id-20'/>
+ <typedef-decl name='deflate_state' type-id='type-id-14' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='107' column='1' id='type-id-75'/>
+ <typedef-decl name='update_hash_cb' type-id='type-id-76' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='109' column='1' id='type-id-21'/>
+ <typedef-decl name='insert_string_cb' type-id='type-id-77' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='110' column='1' id='type-id-22'/>
+ <typedef-decl name='quick_insert_string_cb' type-id='type-id-78' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='111' column='1' id='type-id-23'/>
+ <enum-decl name='block_state' naming-typedef-id='type-id-79' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='287' column='1' id='type-id-80'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='need_more' value='0'/>
+ <enumerator name='block_done' value='1'/>
+ <enumerator name='finish_started' value='2'/>
+ <enumerator name='finish_done' value='3'/>
+ </enum-decl>
+ <typedef-decl name='block_state' type-id='type-id-80' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='292' column='1' id='type-id-79'/>
+ <typedef-decl name='zng_calloc_func' type-id='type-id-54' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='132' column='1' id='type-id-81'/>
+ <typedef-decl name='zng_cfree_func' type-id='type-id-53' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='133' column='1' id='type-id-82'/>
+ <class-decl name='zng_gz_header_s' size-in-bits='640' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='126' column='1' id='type-id-83'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='time' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='xflags' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='os' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='extra_len' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='extra_max' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='name' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='name_max' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='comment' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='comm_max' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='137' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='hcrc' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='done' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='139' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_gz_header' type-id='type-id-83' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='140' column='1' id='type-id-84'/>
+ <typedef-decl name='zng_gz_headerp' type-id='type-id-85' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='142' column='1' id='type-id-18'/>
+ <enum-decl name='zng_deflate_param' naming-typedef-id='type-id-86' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1800' column='1' id='type-id-87'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='Z_DEFLATE_LEVEL' value='0'/>
+ <enumerator name='Z_DEFLATE_STRATEGY' value='1'/>
+ <enumerator name='Z_DEFLATE_REPRODUCIBLE' value='2'/>
+ </enum-decl>
+ <typedef-decl name='zng_deflate_param' type-id='type-id-87' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1810' column='1' id='type-id-86'/>
+ <class-decl name='zng_deflate_param_value' size-in-bits='256' is-struct='yes' naming-typedef-id='type-id-88' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1812' column='1' id='type-id-89'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='param' type-id='type-id-86' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1813' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='buf' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1814' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='size' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1815' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='status' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1816' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_deflate_param_value' type-id='type-id-89' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1817' column='1' id='type-id-88'/>
+ <typedef-decl name='uint16_t' type-id='type-id-90' filepath='/usr/powerpc64le-linux-gnu/include/bits/stdint-uintn.h' line='25' column='1' id='type-id-63'/>
+ <typedef-decl name='uint64_t' type-id='type-id-91' filepath='/usr/powerpc64le-linux-gnu/include/bits/stdint-uintn.h' line='27' column='1' id='type-id-33'/>
+ <typedef-decl name='__uint16_t' type-id='type-id-68' filepath='/usr/powerpc64le-linux-gnu/include/bits/types.h' line='40' column='1' id='type-id-90'/>
+ <typedef-decl name='__uint64_t' type-id='type-id-4' filepath='/usr/powerpc64le-linux-gnu/include/bits/types.h' line='45' column='1' id='type-id-91'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-32'/>
+ <qualified-type-def type-id='type-id-72' const='yes' id='type-id-92'/>
+ <pointer-type-def type-id='type-id-92' size-in-bits='64' id='type-id-74'/>
+ <pointer-type-def type-id='type-id-71' size-in-bits='64' id='type-id-73'/>
+ <pointer-type-def type-id='type-id-75' size-in-bits='64' id='type-id-93'/>
+ <qualified-type-def type-id='type-id-93' const='yes' id='type-id-94'/>
+ <pointer-type-def type-id='type-id-34' size-in-bits='64' id='type-id-95'/>
+ <pointer-type-def type-id='type-id-96' size-in-bits='64' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-97' size-in-bits='64' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-8' size-in-bits='64' id='type-id-98'/>
+ <pointer-type-def type-id='type-id-99' size-in-bits='64' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-81' size-in-bits='64' id='type-id-100'/>
+ <pointer-type-def type-id='type-id-82' size-in-bits='64' id='type-id-101'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='64' id='type-id-102'/>
+ <pointer-type-def type-id='type-id-84' size-in-bits='64' id='type-id-85'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-57'/>
+ <function-decl name='cpu_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='23' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='deflate_stored' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='111' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_fast' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='112' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_quick' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='113' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_medium' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='115' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_slow' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='117' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_rle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='118' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_huff' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='update_hash_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='124' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='125' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='126' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2' mangled-name='zng_deflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit_' mangled-name='zng_deflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2_' mangled-name='zng_deflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetDictionary' mangled-name='zng_deflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-8' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetDictionary' mangled-name='zng_deflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-42' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-98' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateResetKeep' mangled-name='zng_deflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateReset' mangled-name='zng_deflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetHeader' mangled-name='zng_deflateSetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <parameter type-id='type-id-18' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePending' mangled-name='zng_deflatePending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflatePending@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-98' name='pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-95' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePrime' mangled-name='zng_deflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateParams' mangled-name='zng_deflateParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateTune' mangled-name='zng_deflateTune' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateTune@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='good_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_lazy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='nice_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_chain' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateBound' mangled-name='zng_deflateBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <parameter type-id='type-id-4' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_deflateCopy' mangled-name='zng_deflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <parameter type-id='type-id-15' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetParams' mangled-name='zng_deflateSetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-102' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-6' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetParams' mangled-name='zng_deflateGetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateGetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-102' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-6' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_tr_init' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='380' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='382' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_tr_align' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='383' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_tr_stored_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='384' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_zcalloc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='129' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='zng_zcfree' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='130' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_alloc_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='135' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-100'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='zng_free_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='136' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-101'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-96'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-97'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-99'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_fast.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_fill_window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='376' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='381' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_flush_pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='50' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_stored.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_read_buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='51' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-3'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='crc32_fold' type-id='type-id-24' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='14' column='1' id='type-id-103'/>
+ <class-decl name='functable_s' size-in-bits='1088' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='19' column='1' id='type-id-104'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='adler32' type-id='type-id-105' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='adler32_fold_copy' type-id='type-id-106' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='crc32' type-id='type-id-105' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='crc32_fold_reset' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='crc32_fold_copy' type-id='type-id-108' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='crc32_fold' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='crc32_fold_final' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='compare256' type-id='type-id-110' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='chunksize' type-id='type-id-111' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='chunkmemset_safe' type-id='type-id-112' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='inflate_fast' type-id='type-id-113' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='insert_string' type-id='type-id-77' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='longest_match' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='32' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='longest_match_slow' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='quick_insert_string' type-id='type-id-78' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='slide_hash' type-id='type-id-115' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='update_hash' type-id='type-id-76' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='36' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-103' size-in-bits='64' id='type-id-116'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-117'/>
+ <pointer-type-def type-id='type-id-118' size-in-bits='64' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-119' size-in-bits='64' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-120' size-in-bits='64' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-121' size-in-bits='64' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-122' size-in-bits='64' id='type-id-105'/>
+ <pointer-type-def type-id='type-id-123' size-in-bits='64' id='type-id-106'/>
+ <pointer-type-def type-id='type-id-124' size-in-bits='64' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-125' size-in-bits='64' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-126' size-in-bits='64' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-127' size-in-bits='64' id='type-id-115'/>
+ <pointer-type-def type-id='type-id-128' size-in-bits='64' id='type-id-113'/>
+ <function-decl name='adler32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.h' line='9' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='adler32_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='28' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='adler32_vmx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='33' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='adler32_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='48' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='chunksize_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='75' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='76' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='chunksize_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='93' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='94' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='inflate_fast_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='104' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='inflate_fast_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='118' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_crc32_braid' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='124' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='crc32_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='128' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='compare256_unaligned_64' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='143' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='compare256_power9' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='156' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='161' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='longest_match_unaligned_64' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='176' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='longest_match_power9' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='189' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_unaligned_64' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='198' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_power9' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='211' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='215' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='slide_hash_vmx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='231' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='slide_hash_power8' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='234' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='update_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='241' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='crc32_fold_reset_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='16' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='crc32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='17' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='crc32_fold_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='18' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='crc32_fold_final_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='19' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='slide_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='377' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <var-decl name='functable' type-id='type-id-104' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='39' column='1'/>
+ <function-type size-in-bits='64' id='type-id-118'>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-119'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-120'>
+ <parameter type-id='type-id-117'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-121'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-122'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-123'>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-124'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-125'>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-126'>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-127'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-128'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-5'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='variadic parameter type' id='type-id-129'/>
+ <typedef-decl name='gzFile' type-id='type-id-130' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1285' column='1' id='type-id-131'/>
+ <class-decl name='gzFile_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1790' column='1' id='type-id-132'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1791' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='next' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1792' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pos' type-id='type-id-10' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1793' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-132' size-in-bits='64' id='type-id-130'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-133'/>
+ <function-decl name='zng_gzopen' mangled-name='zng_gzopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-43' name='path' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <parameter type-id='type-id-43' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <return type-id='type-id-131'/>
+ </function-decl>
+ <function-decl name='zng_gzdopen' mangled-name='zng_gzdopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzdopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-17' name='fd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <parameter type-id='type-id-43' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <return type-id='type-id-131'/>
+ </function-decl>
+ <function-decl name='zng_gzclose' mangled-name='zng_gzclose' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzbuffer' mangled-name='zng_gzbuffer' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzbuffer@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <parameter type-id='type-id-3' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzrewind' mangled-name='zng_gzrewind' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzrewind@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzseek' mangled-name='zng_gzseek' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzseek@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-10' name='offset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-17' name='whence' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='zng_gztell' mangled-name='zng_gztell' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gztell@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='zng_gzoffset' mangled-name='zng_gzoffset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzoffset@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1'/>
+ <return type-id='type-id-10'/>
+ </function-decl>
+ <function-decl name='zng_gzeof' mangled-name='zng_gzeof' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzeof@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzerror' mangled-name='zng_gzerror' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzerror@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <parameter type-id='type-id-133' name='errnum' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='zng_gzclearerr' mangled-name='zng_gzclearerr' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclearerr@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_r' mangled-name='zng_gzclose_r' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1641' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose_r@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_w' mangled-name='zng_gzclose_w' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1643' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose_w@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='__open_2' filepath='/usr/powerpc64le-linux-gnu/include/bits/fcntl2.h' line='26' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='__open_too_many_args' filepath='/usr/powerpc64le-linux-gnu/include/bits/fcntl2.h' line='35' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='__open_missing_mode' filepath='/usr/powerpc64le-linux-gnu/include/bits/fcntl2.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/powerpc64le-linux-gnu/include/stdlib.h' line='540' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/powerpc64le-linux-gnu/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-43'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/powerpc64le-linux-gnu/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-32' filepath='/usr/lib/gcc-cross/powerpc64le-linux-gnu/11/include/stdarg.h' line='40' column='1' id='type-id-134'/>
+ <typedef-decl name='va_list' type-id='type-id-134' filepath='/usr/lib/gcc-cross/powerpc64le-linux-gnu/11/include/stdarg.h' line='99' column='1' id='type-id-135'/>
+ <function-decl name='zng_gzwrite' mangled-name='zng_gzwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzfwrite' mangled-name='zng_gzfwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzfwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-6' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-6' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_gzputc' mangled-name='zng_gzputc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzputc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <parameter type-id='type-id-17' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzputs' mangled-name='zng_gzputs' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzputs@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <parameter type-id='type-id-43' name='s' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzvprintf' mangled-name='zng_gzvprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzvprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-43' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-135' name='va' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzprintf' mangled-name='zng_gzprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter type-id='type-id-43' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzflush' mangled-name='zng_gzflush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzflush@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <parameter type-id='type-id-17' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzsetparams' mangled-name='zng_gzsetparams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzsetparams@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-17' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-17' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/powerpc64le-linux-gnu/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-136'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-137' size-in-bits='61568' id='type-id-138'>
+ <subrange length='1924' type-id='type-id-4' id='type-id-139'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='4608' id='type-id-140'>
+ <subrange length='288' type-id='type-id-4' id='type-id-141'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='5120' id='type-id-142'>
+ <subrange length='320' type-id='type-id-4' id='type-id-143'/>
+ </array-type-def>
+ <enum-decl name='inflate_mode' naming-typedef-id='type-id-144' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='25' column='1' id='type-id-145'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='HEAD' value='16180'/>
+ <enumerator name='FLAGS' value='16181'/>
+ <enumerator name='TIME' value='16182'/>
+ <enumerator name='OS' value='16183'/>
+ <enumerator name='EXLEN' value='16184'/>
+ <enumerator name='EXTRA' value='16185'/>
+ <enumerator name='NAME' value='16186'/>
+ <enumerator name='COMMENT' value='16187'/>
+ <enumerator name='HCRC' value='16188'/>
+ <enumerator name='DICTID' value='16189'/>
+ <enumerator name='DICT' value='16190'/>
+ <enumerator name='TYPE' value='16191'/>
+ <enumerator name='TYPEDO' value='16192'/>
+ <enumerator name='STORED' value='16193'/>
+ <enumerator name='COPY_' value='16194'/>
+ <enumerator name='COPY' value='16195'/>
+ <enumerator name='TABLE' value='16196'/>
+ <enumerator name='LENLENS' value='16197'/>
+ <enumerator name='CODELENS' value='16198'/>
+ <enumerator name='LEN_' value='16199'/>
+ <enumerator name='LEN' value='16200'/>
+ <enumerator name='LENEXT' value='16201'/>
+ <enumerator name='DIST' value='16202'/>
+ <enumerator name='DISTEXT' value='16203'/>
+ <enumerator name='MATCH' value='16204'/>
+ <enumerator name='LIT' value='16205'/>
+ <enumerator name='CHECK' value='16206'/>
+ <enumerator name='LENGTH' value='16207'/>
+ <enumerator name='DONE' value='16208'/>
+ <enumerator name='BAD' value='16209'/>
+ <enumerator name='MEM' value='16210'/>
+ <enumerator name='SYNC' value='16211'/>
+ </enum-decl>
+ <typedef-decl name='inflate_mode' type-id='type-id-145' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='58' column='1' id='type-id-144'/>
+ <class-decl name='inflate_state' size-in-bits='73216' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='87' column='1' id='type-id-146'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='mode' type-id='type-id-144' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='last' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='90' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='wrap' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='havedict' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='flags' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='94' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='dmax' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='check' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='head' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='wbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='wsize' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='whave' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='wnext' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='window' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='crc_fold' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='hold' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1248'>
+ <var-decl name='length' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='offset' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='extra' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='lencode' type-id='type-id-147' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='distcode' type-id='type-id-147' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='lenbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='distbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='ncode' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1568'>
+ <var-decl name='nlen' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1600'>
+ <var-decl name='ndist' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1632'>
+ <var-decl name='have' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1664'>
+ <var-decl name='next' type-id='type-id-148' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1728'>
+ <var-decl name='lens' type-id='type-id-142' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='6848'>
+ <var-decl name='work' type-id='type-id-140' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='11456'>
+ <var-decl name='codes' type-id='type-id-138' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73024'>
+ <var-decl name='sane' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73056'>
+ <var-decl name='back' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73088'>
+ <var-decl name='was' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73120'>
+ <var-decl name='chunksize' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='134' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-137' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='27' column='1' id='type-id-149'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='30' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-149' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='31' column='1' id='type-id-137'/>
+ <enum-decl name='codetype' naming-typedef-id='type-id-150' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='57' column='1' id='type-id-151'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <typedef-decl name='codetype' type-id='type-id-151' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='61' column='1' id='type-id-150'/>
+ <typedef-decl name='in_func' type-id='type-id-152' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1075' column='1' id='type-id-153'/>
+ <typedef-decl name='out_func' type-id='type-id-154' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1076' column='1' id='type-id-155'/>
+ <pointer-type-def type-id='type-id-137' size-in-bits='64' id='type-id-148'/>
+ <pointer-type-def type-id='type-id-148' size-in-bits='64' id='type-id-156'/>
+ <qualified-type-def type-id='type-id-137' const='yes' id='type-id-157'/>
+ <pointer-type-def type-id='type-id-157' size-in-bits='64' id='type-id-147'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='64' id='type-id-158'/>
+ <pointer-type-def type-id='type-id-146' size-in-bits='64' id='type-id-159'/>
+ <pointer-type-def type-id='type-id-160' size-in-bits='64' id='type-id-154'/>
+ <pointer-type-def type-id='type-id-161' size-in-bits='64' id='type-id-152'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-162'/>
+ <pointer-type-def type-id='type-id-3' size-in-bits='64' id='type-id-163'/>
+ <function-decl name='zng_inflateBackInit' mangled-name='zng_inflateBackInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-42' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackInit_' mangled-name='zng_inflateBackInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-42' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBack' mangled-name='zng_inflateBack' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBack@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-153' name='in' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-45' name='in_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-155' name='out' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-45' name='out_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackEnd' mangled-name='zng_inflateBackEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_fixedtables' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='138' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-159'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='zng_inflate_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='63' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-150'/>
+ <parameter type-id='type-id-162'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-156'/>
+ <parameter type-id='type-id-163'/>
+ <parameter type-id='type-id-162'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-160'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-8'/>
+ <return type-id='type-id-34'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-161'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-158'/>
+ <return type-id='type-id-8'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_inflateResetKeep' mangled-name='zng_inflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset' mangled-name='zng_inflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset2' mangled-name='zng_inflateReset2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateReset2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2' mangled-name='zng_inflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit' mangled-name='zng_inflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit_' mangled-name='zng_inflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2_' mangled-name='zng_inflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflatePrime' mangled-name='zng_inflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflate' mangled-name='zng_inflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-34' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateEnd' mangled-name='zng_inflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetDictionary' mangled-name='zng_inflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-42' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-98' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSetDictionary' mangled-name='zng_inflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-8' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetHeader' mangled-name='zng_inflateGetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateGetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <parameter type-id='type-id-18' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSync' mangled-name='zng_inflateSync' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSync@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSyncPoint' mangled-name='zng_inflateSyncPoint' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSyncPoint@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateCopy' mangled-name='zng_inflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-15' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateUndermine' mangled-name='zng_inflateUndermine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateUndermine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <parameter type-id='type-id-34' name='subvert' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateValidate' mangled-name='zng_inflateValidate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateValidate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <parameter type-id='type-id-34' name='check' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateMark' mangled-name='zng_inflateMark' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateMark@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='zng_inflateCodesUsed' mangled-name='zng_inflateCodesUsed' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateCodesUsed@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-164' size-in-bits='9216' id='type-id-165'>
+ <subrange length='288' type-id='type-id-4' id='type-id-141'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-164' size-in-bits='960' id='type-id-166'>
+ <subrange length='30' type-id='type-id-4' id='type-id-167'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-168' size-in-bits='928' id='type-id-169'>
+ <subrange length='29' type-id='type-id-4' id='type-id-170'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-168' size-in-bits='960' id='type-id-171'>
+ <subrange length='30' type-id='type-id-4' id='type-id-167'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-11' size-in-bits='2048' id='type-id-172'>
+ <subrange length='256' type-id='type-id-4' id='type-id-173'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-11' size-in-bits='4096' id='type-id-174'>
+ <subrange length='512' type-id='type-id-4' id='type-id-175'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-71' const='yes' id='type-id-164'/>
+ <qualified-type-def type-id='type-id-17' const='yes' id='type-id-168'/>
+ <var-decl name='static_ltree' type-id='type-id-165' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='14' column='1'/>
+ <var-decl name='static_dtree' type-id='type-id-166' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='15' column='1'/>
+ <var-decl name='zng_dist_code' type-id='type-id-174' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='17' column='1'/>
+ <var-decl name='zng_length_code' type-id='type-id-172' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='18' column='1'/>
+ <var-decl name='base_length' type-id='type-id-169' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='20' column='1'/>
+ <var-decl name='base_dist' type-id='type-id-171' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='21' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_uncompress2' mangled-name='zng_uncompress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_uncompress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-12' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-52' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_uncompress' mangled-name='zng_uncompress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_uncompress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-12' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-6' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-176' size-in-bits='640' id='type-id-177'>
+ <subrange length='10' type-id='type-id-4' id='type-id-178'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='304' id='type-id-179'>
+ <subrange length='38' type-id='type-id-4' id='type-id-180'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-43' const='yes' id='type-id-176'/>
+ <pointer-type-def type-id='type-id-45' size-in-bits='64' id='type-id-181'/>
+ <var-decl name='zng_vstring' type-id='type-id-179' mangled-name='zng_vstring' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='23' column='1' elf-symbol-id='zng_vstring@@ZLIB_NG_2.0.0'/>
+ <function-decl name='zlibng_version' mangled-name='zlibng_version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibng_version@@ZLIB_NG_2.1.0'>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='zng_zlibCompileFlags' mangled-name='zng_zlibCompileFlags' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='36' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_zlibCompileFlags@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_zError' mangled-name='zng_zError' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_zError@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-17' name='err' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <var-decl name='zng_z_errmsg' type-id='type-id-177' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='24' column='1'/>
+ <function-decl name='free' filepath='/usr/powerpc64le-linux-gnu/include/stdlib.h' line='555' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='posix_memalign' filepath='/usr/powerpc64le-linux-gnu/include/stdlib.h' line='586' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-181'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/power' language='LANG_C11'>
+ <var-decl name='power_cpu_has_altivec' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='10' column='1'/>
+ <var-decl name='power_cpu_has_arch_2_07' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='11' column='1'/>
+ <var-decl name='power_cpu_has_arch_3_00' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/power/power_features.h' line='12' column='1'/>
+ <function-decl name='getauxval' filepath='/usr/powerpc64le-linux-gnu/include/sys/auxv.h' line='31' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-4'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1856' is-struct='yes' naming-typedef-id='type-id-182' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='102' column='1' id='type-id-183'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-132' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='mode' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='fd' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='path' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='want' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='in' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='out' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='direct' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='how' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='start' type-id='type-id-10' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='eof' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='past' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='level' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='strategy' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reset' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='skip' type-id='type-id-10' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='seek' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='err' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='msg' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='strm' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='133' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gz_state' type-id='type-id-183' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='134' column='1' id='type-id-182'/>
+ <typedef-decl name='__ssize_t' type-id='type-id-1' filepath='/usr/powerpc64le-linux-gnu/include/bits/types.h' line='194' column='1' id='type-id-184'/>
+ <typedef-decl name='ssize_t' type-id='type-id-184' filepath='/usr/powerpc64le-linux-gnu/include/stdio.h' line='77' column='1' id='type-id-136'/>
+ <pointer-type-def type-id='type-id-182' size-in-bits='64' id='type-id-185'/>
+ <function-decl name='zng_gzread' mangled-name='zng_gzread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzfread' mangled-name='zng_gzfread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzfread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-6' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-6' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_gzgetc' mangled-name='zng_gzgetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzgetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzungetc' mangled-name='zng_gzungetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzungetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-17' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzgets' mangled-name='zng_gzgets' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzgets@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-32' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-17' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='zng_gzdirect' mangled-name='zng_gzdirect' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzdirect@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='138' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-185'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-43'/>
+ <return type-id='type-id-5'/>
+ </function-decl>
+ <function-decl name='__read_chk' filepath='/usr/powerpc64le-linux-gnu/include/bits/unistd.h' line='23' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-136'/>
+ </function-decl>
+ <function-decl name='__errno_location' filepath='/usr/powerpc64le-linux-gnu/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/powerpc64le-linux-gnu/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/powerpc64le-linux-gnu/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/powerpc64le-linux-gnu/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-x86_64-pc-linux-gnu-m32.abi b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-x86_64-pc-linux-gnu-m32.abi
new file mode 100644
index 0000000000..82d8943b8b
--- /dev/null
+++ b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-x86_64-pc-linux-gnu-m32.abi
@@ -0,0 +1,2032 @@
+<abi-corpus version='2.0' path='btmp1/libz-ng.so.2.1.0.devel' architecture='elf-intel-80386' soname='libz-ng.so.2'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld-linux.so.2'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='zlibng_version' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compressBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_gen' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_op' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePending' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateTune' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_get_crc_table' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzbuffer' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclearerr' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_r' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_w' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdirect' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzeof' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzerror' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzflush' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgets' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzoffset' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputs' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzrewind' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzseek' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzsetparams' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gztell' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzungetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzvprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBack' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCodesUsed' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateMark' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSync' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSyncPoint' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateUndermine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateValidate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zError' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zlibCompileFlags' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <elf-variable-symbols>
+ <elf-symbol name='zng_vstring' size='38' version='ZLIB_NG_2.0.0' is-default-version='yes' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-variable-symbols>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='void' id='type-id-4'/>
+ <typedef-decl name='uint32_t' type-id='type-id-5' filepath='/usr/include/bits/stdint-uintn.h' line='26' column='1' id='type-id-6'/>
+ <typedef-decl name='__uint32_t' type-id='type-id-3' filepath='/usr/include/bits/types.h' line='42' column='1' id='type-id-5'/>
+ <typedef-decl name='__int64_t' type-id='type-id-1' filepath='/usr/include/bits/types.h' line='47' column='1' id='type-id-7'/>
+ <typedef-decl name='__off64_t' type-id='type-id-7' filepath='/usr/include/bits/types.h' line='153' column='1' id='type-id-8'/>
+ <typedef-decl name='off64_t' type-id='type-id-8' filepath='/usr/include/sys/types.h' line='92' column='1' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-10'/>
+ <pointer-type-def type-id='type-id-10' size-in-bits='32' id='type-id-11'/>
+ <function-decl name='zng_adler32' mangled-name='zng_adler32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_adler32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_adler32_combine' mangled-name='zng_adler32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_adler32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-6' name='adler2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-12'/>
+ <class-decl name='internal_state' size-in-bits='47744' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='113' column='1' id='type-id-13'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='pending_buf' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_out' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='pending_buf_size' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='wrap' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='gzindex' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='gzhead' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='status' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='last_flush' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='reproducible' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='block_open' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='w_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='w_bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='w_mask' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='lookahead' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='high_water' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='window_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='window' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='150' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='prev' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='head' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='ins_h' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='168' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='block_start' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='170' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='match_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='175' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='prev_match' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='176' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='match_available' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='strstart' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='864'>
+ <var-decl name='match_start' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='prev_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='max_chain_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='max_lazy_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='update_hash' type-id='type-id-20' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='201' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='insert_string' type-id='type-id-21' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='quick_insert_string' type-id='type-id-22' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='level' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='207' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='strategy' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='208' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='good_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='nice_match' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='213' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='crc_fold' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='215' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1824'>
+ <var-decl name='dyn_ltree' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='219' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20160'>
+ <var-decl name='dyn_dtree' type-id='type-id-25' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22112'>
+ <var-decl name='bl_tree' type-id='type-id-26' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='221' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23360'>
+ <var-decl name='l_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='223' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23456'>
+ <var-decl name='d_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='224' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23552'>
+ <var-decl name='bl_desc' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='225' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23648'>
+ <var-decl name='bl_count' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='227' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23904'>
+ <var-decl name='heap' type-id='type-id-29' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='230' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42240'>
+ <var-decl name='heap_len' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='231' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42272'>
+ <var-decl name='heap_max' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='232' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42304'>
+ <var-decl name='depth' type-id='type-id-30' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='237' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46912'>
+ <var-decl name='lit_bufsize' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='241' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46944'>
+ <var-decl name='sym_buf' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='261' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='46976'>
+ <var-decl name='sym_next' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='262' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47008'>
+ <var-decl name='sym_end' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='263' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47040'>
+ <var-decl name='opt_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='265' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47072'>
+ <var-decl name='static_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='266' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47104'>
+ <var-decl name='matches' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='267' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47136'>
+ <var-decl name='insert' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='268' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47168'>
+ <var-decl name='compressed_len' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='271' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47200'>
+ <var-decl name='bits_sent' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='272' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47232'>
+ <var-decl name='reserved_p' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='275' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47264'>
+ <var-decl name='bi_buf' type-id='type-id-33' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='277' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47328'>
+ <var-decl name='bi_valid' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='280' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47360'>
+ <var-decl name='reserved' type-id='type-id-35' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='284' column='1'/>
+ </data-member>
+ </class-decl>
+ <type-decl name='int' size-in-bits='32' id='type-id-16'/>
+ <type-decl name='unsigned long int' size-in-bits='32' id='type-id-31'/>
+ <typedef-decl name='alloc_func' type-id='type-id-36' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='93' column='1' id='type-id-37'/>
+ <typedef-decl name='free_func' type-id='type-id-38' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='94' column='1' id='type-id-39'/>
+ <class-decl name='zng_stream_s' size-in-bits='448' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='98' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-41' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='avail_in' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='total_in' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='next_out' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='avail_out' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='total_out' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='msg' type-id='type-id-44' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='state' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='zalloc' type-id='type-id-37' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='zfree' type-id='type-id-39' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='opaque' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='data_type' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='adler' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='reserved' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='117' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_stream' type-id='type-id-40' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='118' column='1' id='type-id-47'/>
+ <typedef-decl name='int32_t' type-id='type-id-48' filepath='/usr/include/bits/stdint-intn.h' line='26' column='1' id='type-id-34'/>
+ <typedef-decl name='uint8_t' type-id='type-id-49' filepath='/usr/include/bits/stdint-uintn.h' line='24' column='1' id='type-id-50'/>
+ <typedef-decl name='__uint8_t' type-id='type-id-2' filepath='/usr/include/bits/types.h' line='38' column='1' id='type-id-49'/>
+ <typedef-decl name='__int32_t' type-id='type-id-16' filepath='/usr/include/bits/types.h' line='41' column='1' id='type-id-48'/>
+ <typedef-decl name='size_t' type-id='type-id-3' filepath='/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h' line='209' column='1' id='type-id-42'/>
+ <qualified-type-def type-id='type-id-12' const='yes' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-51' size-in-bits='32' id='type-id-44'/>
+ <qualified-type-def type-id='type-id-50' const='yes' id='type-id-52'/>
+ <pointer-type-def type-id='type-id-52' size-in-bits='32' id='type-id-41'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='32' id='type-id-45'/>
+ <pointer-type-def type-id='type-id-42' size-in-bits='32' id='type-id-53'/>
+ <pointer-type-def type-id='type-id-50' size-in-bits='32' id='type-id-43'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='32' id='type-id-15'/>
+ <pointer-type-def type-id='type-id-54' size-in-bits='32' id='type-id-38'/>
+ <pointer-type-def type-id='type-id-4' size-in-bits='32' id='type-id-46'/>
+ <pointer-type-def type-id='type-id-55' size-in-bits='32' id='type-id-36'/>
+ <pointer-type-def type-id='type-id-47' size-in-bits='32' id='type-id-14'/>
+ <function-decl name='zng_compress2' mangled-name='zng_compress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <parameter type-id='type-id-16' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_compress' mangled-name='zng_compress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_compressBound' mangled-name='zng_compressBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_compressBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit' mangled-name='zng_deflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='227' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflate' mangled-name='zng_deflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='248' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateEnd' mangled-name='zng_deflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='362' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-54'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-55'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='x86_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/x86_features.h' line='21' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <qualified-type-def type-id='type-id-6' const='yes' id='type-id-56'/>
+ <pointer-type-def type-id='type-id-56' size-in-bits='32' id='type-id-57'/>
+ <function-decl name='zng_get_crc_table' mangled-name='zng_get_crc_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='18' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_get_crc_table@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-57'/>
+ </function-decl>
+ <function-decl name='zng_crc32' mangled-name='zng_crc32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_crc32_combine' mangled-name='zng_crc32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_gen' mangled-name='zng_crc32_combine_gen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine_gen@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-9' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_op' mangled-name='zng_crc32_combine_op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_crc32_combine_op@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-56' name='op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-58'/>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='1248' id='type-id-26'>
+ <subrange length='39' type-id='type-id-3' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='18336' id='type-id-24'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-59' size-in-bits='1952' id='type-id-25'>
+ <subrange length='61' type-id='type-id-3' id='type-id-62'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-34' size-in-bits='352' id='type-id-35'>
+ <subrange length='11' type-id='type-id-3' id='type-id-63'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-16' size-in-bits='18336' id='type-id-29'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <type-decl name='long long unsigned int' size-in-bits='64' id='type-id-64'/>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='256' id='type-id-28'>
+ <subrange length='16' type-id='type-id-3' id='type-id-66'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='512' id='type-id-67'>
+ <subrange length='64' type-id='type-id-3' id='type-id-68'/>
+ </array-type-def>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-69'/>
+ <array-type-def dimensions='1' type-id='type-id-2' size-in-bits='4584' id='type-id-30'>
+ <subrange length='573' type-id='type-id-3' id='type-id-61'/>
+ </array-type-def>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-70'/>
+ <class-decl name='crc32_fold_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='11' column='1' id='type-id-23'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fold' type-id='type-id-67' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='12' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='value' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='13' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='77' column='1' id='type-id-59'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-71' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='81' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-72' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='85' column='1'/>
+ </data-member>
+ </class-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='78' column='1' id='type-id-71'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='79' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='80' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='82' column='1' id='type-id-72'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='83' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='84' column='1'/>
+ </data-member>
+ </union-decl>
+ <typedef-decl name='ct_data' type-id='type-id-59' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='86' column='1' id='type-id-73'/>
+ <typedef-decl name='static_tree_desc' type-id='type-id-58' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='93' column='1' id='type-id-74'/>
+ <class-decl name='tree_desc_s' size-in-bits='96' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='95' column='1' id='type-id-27'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-75' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='max_code' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='stat_desc' type-id='type-id-76' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='98' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='Pos' type-id='type-id-65' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='101' column='1' id='type-id-19'/>
+ <typedef-decl name='deflate_state' type-id='type-id-13' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='107' column='1' id='type-id-77'/>
+ <typedef-decl name='update_hash_cb' type-id='type-id-78' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='109' column='1' id='type-id-20'/>
+ <typedef-decl name='insert_string_cb' type-id='type-id-79' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='110' column='1' id='type-id-21'/>
+ <typedef-decl name='quick_insert_string_cb' type-id='type-id-80' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='111' column='1' id='type-id-22'/>
+ <enum-decl name='block_state' naming-typedef-id='type-id-81' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='287' column='1' id='type-id-82'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='need_more' value='0'/>
+ <enumerator name='block_done' value='1'/>
+ <enumerator name='finish_started' value='2'/>
+ <enumerator name='finish_done' value='3'/>
+ </enum-decl>
+ <typedef-decl name='block_state' type-id='type-id-82' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='292' column='1' id='type-id-81'/>
+ <typedef-decl name='zng_calloc_func' type-id='type-id-55' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='132' column='1' id='type-id-83'/>
+ <typedef-decl name='zng_cfree_func' type-id='type-id-54' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='133' column='1' id='type-id-84'/>
+ <class-decl name='zng_gz_header_s' size-in-bits='416' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='126' column='1' id='type-id-85'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='time' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='xflags' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='os' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='extra' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='extra_len' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='name' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='name_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='comment' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='comm_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='137' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='hcrc' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='done' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='139' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_gz_header' type-id='type-id-85' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='140' column='1' id='type-id-86'/>
+ <typedef-decl name='zng_gz_headerp' type-id='type-id-87' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='142' column='1' id='type-id-17'/>
+ <enum-decl name='zng_deflate_param' naming-typedef-id='type-id-88' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1800' column='1' id='type-id-89'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='Z_DEFLATE_LEVEL' value='0'/>
+ <enumerator name='Z_DEFLATE_STRATEGY' value='1'/>
+ <enumerator name='Z_DEFLATE_REPRODUCIBLE' value='2'/>
+ </enum-decl>
+ <typedef-decl name='zng_deflate_param' type-id='type-id-89' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1810' column='1' id='type-id-88'/>
+ <class-decl name='zng_deflate_param_value' size-in-bits='128' is-struct='yes' naming-typedef-id='type-id-90' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1812' column='1' id='type-id-91'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='param' type-id='type-id-88' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1813' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='buf' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1814' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='size' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1815' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='status' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1816' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_deflate_param_value' type-id='type-id-91' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1817' column='1' id='type-id-90'/>
+ <typedef-decl name='uint16_t' type-id='type-id-92' filepath='/usr/include/bits/stdint-uintn.h' line='25' column='1' id='type-id-65'/>
+ <typedef-decl name='uint64_t' type-id='type-id-93' filepath='/usr/include/bits/stdint-uintn.h' line='27' column='1' id='type-id-33'/>
+ <typedef-decl name='__uint16_t' type-id='type-id-70' filepath='/usr/include/bits/types.h' line='40' column='1' id='type-id-92'/>
+ <typedef-decl name='__uint64_t' type-id='type-id-64' filepath='/usr/include/bits/types.h' line='48' column='1' id='type-id-93'/>
+ <pointer-type-def type-id='type-id-19' size-in-bits='32' id='type-id-18'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='32' id='type-id-32'/>
+ <qualified-type-def type-id='type-id-74' const='yes' id='type-id-94'/>
+ <pointer-type-def type-id='type-id-94' size-in-bits='32' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-73' size-in-bits='32' id='type-id-75'/>
+ <pointer-type-def type-id='type-id-77' size-in-bits='32' id='type-id-95'/>
+ <qualified-type-def type-id='type-id-95' const='yes' id='type-id-96'/>
+ <pointer-type-def type-id='type-id-34' size-in-bits='32' id='type-id-97'/>
+ <pointer-type-def type-id='type-id-98' size-in-bits='32' id='type-id-80'/>
+ <pointer-type-def type-id='type-id-99' size-in-bits='32' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-6' size-in-bits='32' id='type-id-100'/>
+ <pointer-type-def type-id='type-id-101' size-in-bits='32' id='type-id-79'/>
+ <pointer-type-def type-id='type-id-83' size-in-bits='32' id='type-id-102'/>
+ <pointer-type-def type-id='type-id-84' size-in-bits='32' id='type-id-103'/>
+ <pointer-type-def type-id='type-id-90' size-in-bits='32' id='type-id-104'/>
+ <pointer-type-def type-id='type-id-86' size-in-bits='32' id='type-id-87'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-58'/>
+ <function-decl name='cpu_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='23' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='deflate_stored' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='111' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_fast' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='112' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_quick' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='113' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_medium' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='115' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_slow' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='117' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_rle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='118' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='deflate_huff' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-81'/>
+ </function-decl>
+ <function-decl name='update_hash_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='124' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='125' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='126' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2' mangled-name='zng_deflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit_' mangled-name='zng_deflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2_' mangled-name='zng_deflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetDictionary' mangled-name='zng_deflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetDictionary' mangled-name='zng_deflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-43' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-100' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateResetKeep' mangled-name='zng_deflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateReset' mangled-name='zng_deflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetHeader' mangled-name='zng_deflateSetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <parameter type-id='type-id-17' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePending' mangled-name='zng_deflatePending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflatePending@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-100' name='pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-97' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePrime' mangled-name='zng_deflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateParams' mangled-name='zng_deflateParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateTune' mangled-name='zng_deflateTune' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateTune@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='good_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_lazy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='nice_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_chain' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateBound' mangled-name='zng_deflateBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <parameter type-id='type-id-31' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ <function-decl name='zng_deflateCopy' mangled-name='zng_deflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <parameter type-id='type-id-14' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetParams' mangled-name='zng_deflateSetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateSetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-104' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-42' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetParams' mangled-name='zng_deflateGetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_deflateGetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-104' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-42' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_tr_init' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='380' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='382' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_align' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='383' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_stored_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='384' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_zcalloc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='129' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='zng_zcfree' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='130' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_alloc_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='135' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-102'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='zng_free_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='136' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-103'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-98'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-19'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-99'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-101'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_fast.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_fill_window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='376' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='381' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_flush_pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='50' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_stored.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_read_buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='51' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-3'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='crc32_fold' type-id='type-id-23' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='14' column='1' id='type-id-105'/>
+ <class-decl name='functable_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='19' column='1' id='type-id-106'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='adler32' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='adler32_fold_copy' type-id='type-id-108' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='crc32' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='crc32_fold_reset' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='crc32_fold_copy' type-id='type-id-110' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='crc32_fold' type-id='type-id-111' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='crc32_fold_final' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='compare256' type-id='type-id-112' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='chunksize' type-id='type-id-113' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='chunkmemset_safe' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='inflate_fast' type-id='type-id-115' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='insert_string' type-id='type-id-79' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='longest_match' type-id='type-id-116' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='32' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='longest_match_slow' type-id='type-id-116' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='quick_insert_string' type-id='type-id-80' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='slide_hash' type-id='type-id-117' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='update_hash' type-id='type-id-78' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='36' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-105' size-in-bits='32' id='type-id-118'/>
+ <pointer-type-def type-id='type-id-23' size-in-bits='32' id='type-id-119'/>
+ <pointer-type-def type-id='type-id-120' size-in-bits='32' id='type-id-113'/>
+ <pointer-type-def type-id='type-id-121' size-in-bits='32' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-122' size-in-bits='32' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-123' size-in-bits='32' id='type-id-116'/>
+ <pointer-type-def type-id='type-id-124' size-in-bits='32' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-125' size-in-bits='32' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-126' size-in-bits='32' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-127' size-in-bits='32' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-128' size-in-bits='32' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-129' size-in-bits='32' id='type-id-117'/>
+ <pointer-type-def type-id='type-id-130' size-in-bits='32' id='type-id-115'/>
+ <function-decl name='adler32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.h' line='9' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='28' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_ssse3' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='36' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='39' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_avx512' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='42' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_avx512_vnni' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='45' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_fold_copy_sse42' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='53' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_fold_copy_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='56' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_fold_copy_avx512' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='59' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_fold_copy_avx512_vnni' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='62' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_pclmulqdq_reset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='67' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_pclmulqdq_copy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='68' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='crc32_fold_pclmulqdq' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='69' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='crc32_fold_pclmulqdq_final' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='70' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_pclmulqdq' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='71' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunksize_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='75' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='76' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='chunksize_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='78' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='79' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_sse41' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='82' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='chunksize_avx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='85' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_avx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='86' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='inflate_fast_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='104' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='inflate_fast_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='106' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='inflate_fast_sse41' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='109' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='inflate_fast_avx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='112' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_crc32_braid' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='124' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_unaligned_32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='140' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='147' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='150' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='161' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='insert_string_sse4' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='163' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='longest_match_unaligned_32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='173' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='180' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='183' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_unaligned_32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='196' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='202' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='205' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='215' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_sse4' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='217' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-56'/>
+ <return type-id='type-id-19'/>
+ </function-decl>
+ <function-decl name='slide_hash_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='226' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='slide_hash_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='237' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='update_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='241' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='update_hash_sse4' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='243' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_reset_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='16' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='17' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='crc32_fold_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='18' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='crc32_fold_final_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='19' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-118'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='slide_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='377' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <var-decl name='functable' type-id='type-id-106' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='39' column='1'/>
+ <function-type size-in-bits='32' id='type-id-120'>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-121'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-122'>
+ <parameter type-id='type-id-119'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-123'>
+ <parameter type-id='type-id-96'/>
+ <parameter type-id='type-id-19'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-124'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-125'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-126'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-127'>
+ <parameter type-id='type-id-119'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-128'>
+ <parameter type-id='type-id-119'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-129'>
+ <parameter type-id='type-id-95'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-130'>
+ <parameter type-id='type-id-14'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-4'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='variadic parameter type' id='type-id-131'/>
+ <typedef-decl name='gzFile' type-id='type-id-132' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1285' column='1' id='type-id-133'/>
+ <class-decl name='gzFile_s' size-in-bits='128' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1790' column='1' id='type-id-134'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1791' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='next' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1792' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pos' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1793' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-134' size-in-bits='32' id='type-id-132'/>
+ <pointer-type-def type-id='type-id-16' size-in-bits='32' id='type-id-135'/>
+ <function-decl name='zng_gzopen' mangled-name='zng_gzopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-44' name='path' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <parameter type-id='type-id-44' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='zng_gzdopen' mangled-name='zng_gzdopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzdopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-16' name='fd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <parameter type-id='type-id-44' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='zng_gzclose' mangled-name='zng_gzclose' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzbuffer' mangled-name='zng_gzbuffer' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzbuffer@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <parameter type-id='type-id-3' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzrewind' mangled-name='zng_gzrewind' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzrewind@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzseek' mangled-name='zng_gzseek' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzseek@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-9' name='offset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-16' name='whence' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gztell' mangled-name='zng_gztell' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gztell@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzoffset' mangled-name='zng_gzoffset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzoffset@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzeof' mangled-name='zng_gzeof' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzeof@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzerror' mangled-name='zng_gzerror' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzerror@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <parameter type-id='type-id-135' name='errnum' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <function-decl name='zng_gzclearerr' mangled-name='zng_gzclearerr' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclearerr@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_r' mangled-name='zng_gzclose_r' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1641' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose_r@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_w' mangled-name='zng_gzclose_w' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1643' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzclose_w@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='__open_2' filepath='/usr/include/bits/fcntl2.h' line='26' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-44'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='__open_too_many_args' filepath='/usr/include/bits/fcntl2.h' line='35' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='__open_missing_mode' filepath='/usr/include/bits/fcntl2.h' line='37' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/include/stdlib.h' line='540' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-44'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-8'/>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='__gnuc_va_list' type-id='type-id-32' filepath='/usr/lib/gcc/x86_64-linux-gnu/11/include/stdarg.h' line='40' column='1' id='type-id-136'/>
+ <typedef-decl name='va_list' type-id='type-id-136' filepath='/usr/lib/gcc/x86_64-linux-gnu/11/include/stdarg.h' line='99' column='1' id='type-id-137'/>
+ <function-decl name='zng_gzwrite' mangled-name='zng_gzwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzfwrite' mangled-name='zng_gzfwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzfwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-42' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-42' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_gzputc' mangled-name='zng_gzputc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzputc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <parameter type-id='type-id-16' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzputs' mangled-name='zng_gzputs' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzputs@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <parameter type-id='type-id-44' name='s' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzvprintf' mangled-name='zng_gzvprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzvprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-44' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-137' name='va' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzprintf' mangled-name='zng_gzprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter type-id='type-id-44' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzflush' mangled-name='zng_gzflush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzflush@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <parameter type-id='type-id-16' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzsetparams' mangled-name='zng_gzsetparams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzsetparams@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-16' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-16' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-138'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-139' size-in-bits='61568' id='type-id-140'>
+ <subrange length='1924' type-id='type-id-3' id='type-id-141'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='4608' id='type-id-142'>
+ <subrange length='288' type-id='type-id-3' id='type-id-143'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-65' size-in-bits='5120' id='type-id-144'>
+ <subrange length='320' type-id='type-id-3' id='type-id-145'/>
+ </array-type-def>
+ <enum-decl name='inflate_mode' naming-typedef-id='type-id-146' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='25' column='1' id='type-id-147'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='HEAD' value='16180'/>
+ <enumerator name='FLAGS' value='16181'/>
+ <enumerator name='TIME' value='16182'/>
+ <enumerator name='OS' value='16183'/>
+ <enumerator name='EXLEN' value='16184'/>
+ <enumerator name='EXTRA' value='16185'/>
+ <enumerator name='NAME' value='16186'/>
+ <enumerator name='COMMENT' value='16187'/>
+ <enumerator name='HCRC' value='16188'/>
+ <enumerator name='DICTID' value='16189'/>
+ <enumerator name='DICT' value='16190'/>
+ <enumerator name='TYPE' value='16191'/>
+ <enumerator name='TYPEDO' value='16192'/>
+ <enumerator name='STORED' value='16193'/>
+ <enumerator name='COPY_' value='16194'/>
+ <enumerator name='COPY' value='16195'/>
+ <enumerator name='TABLE' value='16196'/>
+ <enumerator name='LENLENS' value='16197'/>
+ <enumerator name='CODELENS' value='16198'/>
+ <enumerator name='LEN_' value='16199'/>
+ <enumerator name='LEN' value='16200'/>
+ <enumerator name='LENEXT' value='16201'/>
+ <enumerator name='DIST' value='16202'/>
+ <enumerator name='DISTEXT' value='16203'/>
+ <enumerator name='MATCH' value='16204'/>
+ <enumerator name='LIT' value='16205'/>
+ <enumerator name='CHECK' value='16206'/>
+ <enumerator name='LENGTH' value='16207'/>
+ <enumerator name='DONE' value='16208'/>
+ <enumerator name='BAD' value='16209'/>
+ <enumerator name='MEM' value='16210'/>
+ <enumerator name='SYNC' value='16211'/>
+ </enum-decl>
+ <typedef-decl name='inflate_mode' type-id='type-id-147' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='58' column='1' id='type-id-146'/>
+ <class-decl name='inflate_state' size-in-bits='72960' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='87' column='1' id='type-id-148'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-14' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='mode' type-id='type-id-146' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='last' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='90' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='wrap' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='havedict' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='flags' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='94' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='dmax' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='check' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='total' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='head' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='wbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='wsize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='whave' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='wnext' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='window' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='crc_fold' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='hold' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='length' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='offset' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='extra' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='lencode' type-id='type-id-149' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1248'>
+ <var-decl name='distcode' type-id='type-id-149' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='lenbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='distbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='ncode' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1376'>
+ <var-decl name='nlen' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='ndist' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='have' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='next' type-id='type-id-150' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='lens' type-id='type-id-144' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='6624'>
+ <var-decl name='work' type-id='type-id-142' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='11232'>
+ <var-decl name='codes' type-id='type-id-140' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72800'>
+ <var-decl name='sane' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72832'>
+ <var-decl name='back' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72864'>
+ <var-decl name='was' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='72896'>
+ <var-decl name='chunksize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='134' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-139' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='27' column='1' id='type-id-151'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='30' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-151' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='31' column='1' id='type-id-139'/>
+ <enum-decl name='codetype' naming-typedef-id='type-id-152' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='57' column='1' id='type-id-153'>
+ <underlying-type type-id='type-id-69'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <typedef-decl name='codetype' type-id='type-id-153' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='61' column='1' id='type-id-152'/>
+ <typedef-decl name='in_func' type-id='type-id-154' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1075' column='1' id='type-id-155'/>
+ <typedef-decl name='out_func' type-id='type-id-156' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1076' column='1' id='type-id-157'/>
+ <pointer-type-def type-id='type-id-139' size-in-bits='32' id='type-id-150'/>
+ <pointer-type-def type-id='type-id-150' size-in-bits='32' id='type-id-158'/>
+ <qualified-type-def type-id='type-id-139' const='yes' id='type-id-159'/>
+ <pointer-type-def type-id='type-id-159' size-in-bits='32' id='type-id-149'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='32' id='type-id-160'/>
+ <pointer-type-def type-id='type-id-148' size-in-bits='32' id='type-id-161'/>
+ <pointer-type-def type-id='type-id-162' size-in-bits='32' id='type-id-156'/>
+ <pointer-type-def type-id='type-id-163' size-in-bits='32' id='type-id-154'/>
+ <pointer-type-def type-id='type-id-65' size-in-bits='32' id='type-id-164'/>
+ <pointer-type-def type-id='type-id-3' size-in-bits='32' id='type-id-165'/>
+ <function-decl name='zng_inflateBackInit' mangled-name='zng_inflateBackInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-43' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackInit_' mangled-name='zng_inflateBackInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-43' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBack' mangled-name='zng_inflateBack' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBack@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-155' name='in' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-46' name='in_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-157' name='out' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-46' name='out_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackEnd' mangled-name='zng_inflateBackEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateBackEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_fixedtables' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='138' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-161'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_inflate_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='63' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-152'/>
+ <parameter type-id='type-id-164'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-158'/>
+ <parameter type-id='type-id-165'/>
+ <parameter type-id='type-id-164'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-type size-in-bits='32' id='type-id-162'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-34'/>
+ </function-type>
+ <function-type size-in-bits='32' id='type-id-163'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-160'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='32' id='type-id-166'/>
+ <function-decl name='zng_inflateResetKeep' mangled-name='zng_inflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset' mangled-name='zng_inflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset2' mangled-name='zng_inflateReset2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateReset2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2' mangled-name='zng_inflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit' mangled-name='zng_inflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit_' mangled-name='zng_inflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2_' mangled-name='zng_inflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-44' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflatePrime' mangled-name='zng_inflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflate' mangled-name='zng_inflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-34' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateEnd' mangled-name='zng_inflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetDictionary' mangled-name='zng_inflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-43' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-100' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSetDictionary' mangled-name='zng_inflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetHeader' mangled-name='zng_inflateGetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateGetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <parameter type-id='type-id-17' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSync' mangled-name='zng_inflateSync' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSync@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSyncPoint' mangled-name='zng_inflateSyncPoint' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateSyncPoint@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateCopy' mangled-name='zng_inflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-14' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateUndermine' mangled-name='zng_inflateUndermine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateUndermine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <parameter type-id='type-id-34' name='subvert' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateValidate' mangled-name='zng_inflateValidate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateValidate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <parameter type-id='type-id-34' name='check' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateMark' mangled-name='zng_inflateMark' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateMark@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1'/>
+ <return type-id='type-id-166'/>
+ </function-decl>
+ <function-decl name='zng_inflateCodesUsed' mangled-name='zng_inflateCodesUsed' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_inflateCodesUsed@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-14' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1'/>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-167' size-in-bits='9216' id='type-id-168'>
+ <subrange length='288' type-id='type-id-3' id='type-id-143'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-167' size-in-bits='960' id='type-id-169'>
+ <subrange length='30' type-id='type-id-3' id='type-id-170'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-171' size-in-bits='928' id='type-id-172'>
+ <subrange length='29' type-id='type-id-3' id='type-id-173'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-171' size-in-bits='960' id='type-id-174'>
+ <subrange length='30' type-id='type-id-3' id='type-id-170'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='2048' id='type-id-175'>
+ <subrange length='256' type-id='type-id-3' id='type-id-176'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='4096' id='type-id-177'>
+ <subrange length='512' type-id='type-id-3' id='type-id-178'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-73' const='yes' id='type-id-167'/>
+ <qualified-type-def type-id='type-id-16' const='yes' id='type-id-171'/>
+ <var-decl name='static_ltree' type-id='type-id-168' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='14' column='1'/>
+ <var-decl name='static_dtree' type-id='type-id-169' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='15' column='1'/>
+ <var-decl name='zng_dist_code' type-id='type-id-177' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='17' column='1'/>
+ <var-decl name='zng_length_code' type-id='type-id-175' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='18' column='1'/>
+ <var-decl name='base_length' type-id='type-id-172' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='20' column='1'/>
+ <var-decl name='base_dist' type-id='type-id-174' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='21' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_uncompress2' mangled-name='zng_uncompress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_uncompress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-53' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_uncompress' mangled-name='zng_uncompress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_uncompress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-53' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-42' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-179' size-in-bits='320' id='type-id-180'>
+ <subrange length='10' type-id='type-id-3' id='type-id-181'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-51' size-in-bits='304' id='type-id-182'>
+ <subrange length='38' type-id='type-id-3' id='type-id-183'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-44' const='yes' id='type-id-179'/>
+ <pointer-type-def type-id='type-id-46' size-in-bits='32' id='type-id-184'/>
+ <var-decl name='zng_vstring' type-id='type-id-182' mangled-name='zng_vstring' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='23' column='1' elf-symbol-id='zng_vstring@@ZLIB_NG_2.0.0'/>
+ <function-decl name='zlibng_version' mangled-name='zlibng_version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='31' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zlibng_version@@ZLIB_NG_2.1.0'>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <function-decl name='zng_zlibCompileFlags' mangled-name='zng_zlibCompileFlags' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='36' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_zlibCompileFlags@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-31'/>
+ </function-decl>
+ <function-decl name='zng_zError' mangled-name='zng_zError' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_zError@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='err' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1'/>
+ <return type-id='type-id-44'/>
+ </function-decl>
+ <var-decl name='zng_z_errmsg' type-id='type-id-180' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='24' column='1'/>
+ <function-decl name='free' filepath='/usr/include/stdlib.h' line='555' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='posix_memalign' filepath='/usr/include/stdlib.h' line='586' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-184'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/chunkset_avx.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/x86' language='LANG_C11'>
+ <function-decl name='chunkmemset_sse41' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/chunkset_tpl.h' line='9' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/chunkset_sse41.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/x86' language='LANG_C11'>
+ <function-decl name='chunkcopy_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/chunkset_sse41.c' line='88' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='chunkunroll_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/chunkset_sse41.c' line='89' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-165'/>
+ <parameter type-id='type-id-165'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/crc32_fold_pclmulqdq.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/x86' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-1' size-in-bits='128' id='type-id-185'>
+ <subrange length='2' id='type-id-186'/>
+ </array-type-def>
+ <typedef-decl name='__m128i' type-id='type-id-185' filepath='/usr/lib/gcc/x86_64-linux-gnu/11/include/emmintrin.h' line='53' column='1' id='type-id-187'/>
+ <pointer-type-def type-id='type-id-187' size-in-bits='32' id='type-id-188'/>
+ <function-decl name='fold_16_vpclmulqdq' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/crc32_fold_pclmulqdq.c' line='35' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-188'/>
+ <parameter type-id='type-id-188'/>
+ <parameter type-id='type-id-188'/>
+ <parameter type-id='type-id-188'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-187'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='fold_16_vpclmulqdq_copy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/crc32_fold_pclmulqdq.c' line='38' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-188'/>
+ <parameter type-id='type-id-188'/>
+ <parameter type-id='type-id-188'/>
+ <parameter type-id='type-id-188'/>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='32' path='gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1248' is-struct='yes' naming-typedef-id='type-id-189' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='102' column='1' id='type-id-190'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-134' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='mode' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='fd' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='path' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='want' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='in' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='out' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='direct' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='how' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='start' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='eof' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='past' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='level' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='strategy' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='reset' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='skip' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='seek' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='err' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='msg' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='800'>
+ <var-decl name='strm' type-id='type-id-47' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='133' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gz_state' type-id='type-id-190' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='134' column='1' id='type-id-189'/>
+ <typedef-decl name='__ssize_t' type-id='type-id-16' filepath='/usr/include/bits/types.h' line='194' column='1' id='type-id-191'/>
+ <typedef-decl name='ssize_t' type-id='type-id-191' filepath='/usr/include/stdio.h' line='77' column='1' id='type-id-138'/>
+ <pointer-type-def type-id='type-id-189' size-in-bits='32' id='type-id-192'/>
+ <function-decl name='zng_gzread' mangled-name='zng_gzread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzfread' mangled-name='zng_gzfread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzfread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-46' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-42' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-42' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='zng_gzgetc' mangled-name='zng_gzgetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzgetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzungetc' mangled-name='zng_gzungetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzungetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-16' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='zng_gzgets' mangled-name='zng_gzgets' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzgets@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-32' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-16' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='zng_gzdirect' mangled-name='zng_gzdirect' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1' visibility='default' binding='global' size-in-bits='32' elf-symbol-id='zng_gzdirect@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-133' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='138' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-192'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-44'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='__read_chk' filepath='/usr/include/bits/unistd.h' line='23' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-138'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-46'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-42'/>
+ <return type-id='type-id-46'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='32'>
+ <parameter type-id='type-id-16'/>
+ <return type-id='type-id-16'/>
+ </function-decl>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-x86_64-pc-linux-gnu.abi b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-x86_64-pc-linux-gnu.abi
new file mode 100644
index 0000000000..a03df554af
--- /dev/null
+++ b/neozip/test/abi/zlib-ng-e4614ebcb9b3e5b108dc983c155e4baf80882311-x86_64-pc-linux-gnu.abi
@@ -0,0 +1,2064 @@
+<abi-corpus version='2.0' path='btmp1/libz-ng.so.2.1.0.devel' architecture='elf-amd-x86_64' soname='libz-ng.so.2'>
+ <elf-needed>
+ <dependency name='libc.so.6'/>
+ <dependency name='ld-linux-x86-64.so.2'/>
+ </elf-needed>
+ <elf-function-symbols>
+ <elf-symbol name='zlibng_version' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_adler32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_compressBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_gen' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_combine_op' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_crc32_z' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateBound' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateGetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePending' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateSetParams' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_deflateTune' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_get_crc_table' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzbuffer' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclearerr' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_r' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzclose_w' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdirect' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzdopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzeof' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzerror' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzflush' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzfwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzgets' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzoffset' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzopen' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzputs' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzread' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzrewind' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzseek' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzsetparams' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gztell' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzungetc' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzvprintf' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_gzwrite' version='ZLIB_NG_GZ_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBack' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateBackInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCodesUsed' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateCopy' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateEnd' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateGetHeader' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit2_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit' version='ZLIB_NG_2.1.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateInit_' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateMark' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflatePrime' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateReset' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateResetKeep' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSetDictionary' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSync' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateSyncPoint' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateUndermine' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_inflateValidate' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress2' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_uncompress' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zError' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ <elf-symbol name='zng_zlibCompileFlags' version='ZLIB_NG_2.0.0' is-default-version='yes' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-function-symbols>
+ <elf-variable-symbols>
+ <elf-symbol name='zng_vstring' size='38' version='ZLIB_NG_2.0.0' is-default-version='yes' type='object-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
+ </elf-variable-symbols>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='long int' size-in-bits='64' id='type-id-1'/>
+ <type-decl name='unsigned char' size-in-bits='8' id='type-id-2'/>
+ <type-decl name='unsigned int' size-in-bits='32' id='type-id-3'/>
+ <type-decl name='unsigned long int' size-in-bits='64' id='type-id-4'/>
+ <typedef-decl name='uint32_t' type-id='type-id-5' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h' line='26' column='1' id='type-id-6'/>
+ <typedef-decl name='__uint32_t' type-id='type-id-3' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='42' column='1' id='type-id-5'/>
+ <typedef-decl name='__off64_t' type-id='type-id-1' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='153' column='1' id='type-id-7'/>
+ <typedef-decl name='off64_t' type-id='type-id-7' filepath='/usr/include/x86_64-linux-gnu/sys/types.h' line='92' column='1' id='type-id-8'/>
+ <typedef-decl name='size_t' type-id='type-id-4' filepath='/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h' line='209' column='1' id='type-id-9'/>
+ <qualified-type-def type-id='type-id-2' const='yes' id='type-id-10'/>
+ <pointer-type-def type-id='type-id-10' size-in-bits='64' id='type-id-11'/>
+ <function-decl name='zng_adler32_z' mangled-name='zng_adler32_z' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32_z@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='61' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_adler32' mangled-name='zng_adler32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='72' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_adler32_combine' mangled-name='zng_adler32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_adler32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='adler1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-6' name='adler2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32.c' line='112' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='void' id='type-id-12'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='char' size-in-bits='8' id='type-id-13'/>
+ <class-decl name='internal_state' size-in-bits='48512' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='113' column='1' id='type-id-14'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='pending_buf' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pending_out' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='pending_buf_size' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='117' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='pending' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='wrap' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='gzindex' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='gzhead' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='status' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='122' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='416'>
+ <var-decl name='last_flush' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='reproducible' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='block_open' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='w_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='w_bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='w_mask' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='608'>
+ <var-decl name='lookahead' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='high_water' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='window_size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='145' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='window' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='150' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='prev' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='160' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='head' type-id='type-id-19' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='166' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='ins_h' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='168' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='block_start' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='170' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='match_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='175' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='992'>
+ <var-decl name='prev_match' type-id='type-id-20' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='176' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='match_available' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='177' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1056'>
+ <var-decl name='strstart' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='178' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1088'>
+ <var-decl name='match_start' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='179' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1120'>
+ <var-decl name='prev_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='181' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1152'>
+ <var-decl name='max_chain_length' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='186' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='max_lazy_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='191' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='update_hash' type-id='type-id-21' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='201' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='insert_string' type-id='type-id-22' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='202' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='quick_insert_string' type-id='type-id-23' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='203' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='level' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='207' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1440'>
+ <var-decl name='strategy' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='208' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='good_match' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='210' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='nice_match' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='213' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='crc_fold' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='215' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='2080'>
+ <var-decl name='dyn_ltree' type-id='type-id-25' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='219' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='20416'>
+ <var-decl name='dyn_dtree' type-id='type-id-26' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='220' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='22368'>
+ <var-decl name='bl_tree' type-id='type-id-27' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='221' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23616'>
+ <var-decl name='l_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='223' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='23808'>
+ <var-decl name='d_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='224' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24000'>
+ <var-decl name='bl_desc' type-id='type-id-28' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='225' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24192'>
+ <var-decl name='bl_count' type-id='type-id-29' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='227' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='24448'>
+ <var-decl name='heap' type-id='type-id-30' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='230' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42784'>
+ <var-decl name='heap_len' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='231' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42816'>
+ <var-decl name='heap_max' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='232' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='42848'>
+ <var-decl name='depth' type-id='type-id-31' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='237' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47456'>
+ <var-decl name='lit_bufsize' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='241' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47488'>
+ <var-decl name='sym_buf' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='261' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47552'>
+ <var-decl name='sym_next' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='262' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47584'>
+ <var-decl name='sym_end' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='263' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47616'>
+ <var-decl name='opt_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='265' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47680'>
+ <var-decl name='static_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='266' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47744'>
+ <var-decl name='matches' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='267' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47776'>
+ <var-decl name='insert' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='268' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47808'>
+ <var-decl name='compressed_len' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='271' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47872'>
+ <var-decl name='bits_sent' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='272' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='47936'>
+ <var-decl name='reserved_p' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='275' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48000'>
+ <var-decl name='bi_buf' type-id='type-id-33' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='277' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48064'>
+ <var-decl name='bi_valid' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='280' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='48096'>
+ <var-decl name='reserved' type-id='type-id-35' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='284' column='1'/>
+ </data-member>
+ </class-decl>
+ <type-decl name='int' size-in-bits='32' id='type-id-17'/>
+ <typedef-decl name='alloc_func' type-id='type-id-36' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='93' column='1' id='type-id-37'/>
+ <typedef-decl name='free_func' type-id='type-id-38' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='94' column='1' id='type-id-39'/>
+ <class-decl name='zng_stream_s' size-in-bits='832' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='98' column='1' id='type-id-40'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='next_in' type-id='type-id-41' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='avail_in' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='100' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='total_in' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='next_out' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='avail_out' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total_out' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='msg' type-id='type-id-43' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='state' type-id='type-id-44' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='108' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='zalloc' type-id='type-id-37' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='zfree' type-id='type-id-39' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='opaque' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='data_type' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='adler' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reserved' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='117' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_stream' type-id='type-id-40' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='118' column='1' id='type-id-46'/>
+ <typedef-decl name='int32_t' type-id='type-id-47' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-intn.h' line='26' column='1' id='type-id-34'/>
+ <typedef-decl name='uint8_t' type-id='type-id-48' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h' line='24' column='1' id='type-id-49'/>
+ <typedef-decl name='__uint8_t' type-id='type-id-2' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='38' column='1' id='type-id-48'/>
+ <typedef-decl name='__int32_t' type-id='type-id-17' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='41' column='1' id='type-id-47'/>
+ <qualified-type-def type-id='type-id-13' const='yes' id='type-id-50'/>
+ <pointer-type-def type-id='type-id-50' size-in-bits='64' id='type-id-43'/>
+ <qualified-type-def type-id='type-id-49' const='yes' id='type-id-51'/>
+ <pointer-type-def type-id='type-id-51' size-in-bits='64' id='type-id-41'/>
+ <pointer-type-def type-id='type-id-14' size-in-bits='64' id='type-id-44'/>
+ <pointer-type-def type-id='type-id-9' size-in-bits='64' id='type-id-52'/>
+ <pointer-type-def type-id='type-id-49' size-in-bits='64' id='type-id-42'/>
+ <pointer-type-def type-id='type-id-2' size-in-bits='64' id='type-id-16'/>
+ <pointer-type-def type-id='type-id-53' size-in-bits='64' id='type-id-38'/>
+ <pointer-type-def type-id='type-id-12' size-in-bits='64' id='type-id-45'/>
+ <pointer-type-def type-id='type-id-54' size-in-bits='64' id='type-id-36'/>
+ <pointer-type-def type-id='type-id-46' size-in-bits='64' id='type-id-15'/>
+ <function-decl name='zng_compress2' mangled-name='zng_compress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='31' column='1'/>
+ <parameter type-id='type-id-9' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <parameter type-id='type-id-17' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='32' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_compress' mangled-name='zng_compress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <parameter type-id='type-id-9' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='73' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_compressBound' mangled-name='zng_compressBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_compressBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-9' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/compress.c' line='81' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit' mangled-name='zng_deflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='227' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflate' mangled-name='zng_deflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='248' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateEnd' mangled-name='zng_deflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='362' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-53'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-54'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='x86_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/x86_features.h' line='21' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <qualified-type-def type-id='type-id-6' const='yes' id='type-id-55'/>
+ <pointer-type-def type-id='type-id-55' size-in-bits='64' id='type-id-56'/>
+ <function-decl name='zng_get_crc_table' mangled-name='zng_get_crc_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='18' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_get_crc_table@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-56'/>
+ </function-decl>
+ <function-decl name='zng_crc32_z' mangled-name='zng_crc32_z' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_z@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <parameter type-id='type-id-9' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='29' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32' mangled-name='zng_crc32' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-11' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <parameter type-id='type-id-6' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid.c' line='41' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_crc32_combine' mangled-name='zng_crc32_combine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <parameter type-id='type-id-8' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='46' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_gen' mangled-name='zng_crc32_combine_gen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine_gen@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-8' name='len2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='49' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='zng_crc32_combine_op' mangled-name='zng_crc32_combine_op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_crc32_combine_op@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-6' name='crc1' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-6' name='crc2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <parameter type-id='type-id-55' name='op' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_braid_comb.c' line='52' column='1'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-57'/>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='1248' id='type-id-27'>
+ <subrange length='39' type-id='type-id-4' id='type-id-59'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='18336' id='type-id-25'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-58' size-in-bits='1952' id='type-id-26'>
+ <subrange length='61' type-id='type-id-4' id='type-id-61'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-34' size-in-bits='352' id='type-id-35'>
+ <subrange length='11' type-id='type-id-4' id='type-id-62'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-17' size-in-bits='18336' id='type-id-30'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='256' id='type-id-29'>
+ <subrange length='16' type-id='type-id-4' id='type-id-64'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-49' size-in-bits='512' id='type-id-65'>
+ <subrange length='64' type-id='type-id-4' id='type-id-66'/>
+ </array-type-def>
+ <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='type-id-67'/>
+ <array-type-def dimensions='1' type-id='type-id-2' size-in-bits='4584' id='type-id-31'>
+ <subrange length='573' type-id='type-id-4' id='type-id-60'/>
+ </array-type-def>
+ <type-decl name='unsigned short int' size-in-bits='16' id='type-id-68'/>
+ <class-decl name='crc32_fold_s' size-in-bits='544' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='11' column='1' id='type-id-24'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fold' type-id='type-id-65' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='12' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='value' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='13' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='ct_data_s' size-in-bits='32' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='77' column='1' id='type-id-58'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='fc' type-id='type-id-69' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='81' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='dl' type-id='type-id-70' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='85' column='1'/>
+ </data-member>
+ </class-decl>
+ <union-decl name='__anonymous_union__' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='78' column='1' id='type-id-69'>
+ <data-member access='public'>
+ <var-decl name='freq' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='79' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='code' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='80' column='1'/>
+ </data-member>
+ </union-decl>
+ <union-decl name='__anonymous_union__1' size-in-bits='16' is-anonymous='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='82' column='1' id='type-id-70'>
+ <data-member access='public'>
+ <var-decl name='dad' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='83' column='1'/>
+ </data-member>
+ <data-member access='public'>
+ <var-decl name='len' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='84' column='1'/>
+ </data-member>
+ </union-decl>
+ <typedef-decl name='ct_data' type-id='type-id-58' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='86' column='1' id='type-id-71'/>
+ <typedef-decl name='static_tree_desc' type-id='type-id-57' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='93' column='1' id='type-id-72'/>
+ <class-decl name='tree_desc_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='95' column='1' id='type-id-28'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='dyn_tree' type-id='type-id-73' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='max_code' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='stat_desc' type-id='type-id-74' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='98' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='Pos' type-id='type-id-63' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='101' column='1' id='type-id-20'/>
+ <typedef-decl name='deflate_state' type-id='type-id-14' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='107' column='1' id='type-id-75'/>
+ <typedef-decl name='update_hash_cb' type-id='type-id-76' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='109' column='1' id='type-id-21'/>
+ <typedef-decl name='insert_string_cb' type-id='type-id-77' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='110' column='1' id='type-id-22'/>
+ <typedef-decl name='quick_insert_string_cb' type-id='type-id-78' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='111' column='1' id='type-id-23'/>
+ <enum-decl name='block_state' naming-typedef-id='type-id-79' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='287' column='1' id='type-id-80'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='need_more' value='0'/>
+ <enumerator name='block_done' value='1'/>
+ <enumerator name='finish_started' value='2'/>
+ <enumerator name='finish_done' value='3'/>
+ </enum-decl>
+ <typedef-decl name='block_state' type-id='type-id-80' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='292' column='1' id='type-id-79'/>
+ <typedef-decl name='zng_calloc_func' type-id='type-id-54' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='132' column='1' id='type-id-81'/>
+ <typedef-decl name='zng_cfree_func' type-id='type-id-53' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='133' column='1' id='type-id-82'/>
+ <class-decl name='zng_gz_header_s' size-in-bits='640' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='126' column='1' id='type-id-83'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='text' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='time' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='xflags' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='os' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='extra' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='extra_len' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='288'>
+ <var-decl name='extra_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='name' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='134' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='name_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='135' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='comment' type-id='type-id-42' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='136' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='comm_max' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='137' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='hcrc' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='138' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='done' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='139' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_gz_header' type-id='type-id-83' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='140' column='1' id='type-id-84'/>
+ <typedef-decl name='zng_gz_headerp' type-id='type-id-85' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='142' column='1' id='type-id-18'/>
+ <enum-decl name='zng_deflate_param' naming-typedef-id='type-id-86' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1800' column='1' id='type-id-87'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='Z_DEFLATE_LEVEL' value='0'/>
+ <enumerator name='Z_DEFLATE_STRATEGY' value='1'/>
+ <enumerator name='Z_DEFLATE_REPRODUCIBLE' value='2'/>
+ </enum-decl>
+ <typedef-decl name='zng_deflate_param' type-id='type-id-87' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1810' column='1' id='type-id-86'/>
+ <class-decl name='zng_deflate_param_value' size-in-bits='256' is-struct='yes' naming-typedef-id='type-id-88' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1812' column='1' id='type-id-89'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='param' type-id='type-id-86' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1813' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='buf' type-id='type-id-45' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1814' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='size' type-id='type-id-9' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1815' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='status' type-id='type-id-34' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1816' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='zng_deflate_param_value' type-id='type-id-89' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1817' column='1' id='type-id-88'/>
+ <typedef-decl name='uint16_t' type-id='type-id-90' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h' line='25' column='1' id='type-id-63'/>
+ <typedef-decl name='uint64_t' type-id='type-id-91' filepath='/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h' line='27' column='1' id='type-id-33'/>
+ <typedef-decl name='__uint16_t' type-id='type-id-68' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='40' column='1' id='type-id-90'/>
+ <typedef-decl name='__uint64_t' type-id='type-id-4' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='45' column='1' id='type-id-91'/>
+ <pointer-type-def type-id='type-id-20' size-in-bits='64' id='type-id-19'/>
+ <pointer-type-def type-id='type-id-13' size-in-bits='64' id='type-id-32'/>
+ <qualified-type-def type-id='type-id-72' const='yes' id='type-id-92'/>
+ <pointer-type-def type-id='type-id-92' size-in-bits='64' id='type-id-74'/>
+ <pointer-type-def type-id='type-id-71' size-in-bits='64' id='type-id-73'/>
+ <pointer-type-def type-id='type-id-75' size-in-bits='64' id='type-id-93'/>
+ <qualified-type-def type-id='type-id-93' const='yes' id='type-id-94'/>
+ <pointer-type-def type-id='type-id-34' size-in-bits='64' id='type-id-95'/>
+ <pointer-type-def type-id='type-id-96' size-in-bits='64' id='type-id-78'/>
+ <pointer-type-def type-id='type-id-97' size-in-bits='64' id='type-id-76'/>
+ <pointer-type-def type-id='type-id-6' size-in-bits='64' id='type-id-98'/>
+ <pointer-type-def type-id='type-id-99' size-in-bits='64' id='type-id-77'/>
+ <pointer-type-def type-id='type-id-81' size-in-bits='64' id='type-id-100'/>
+ <pointer-type-def type-id='type-id-82' size-in-bits='64' id='type-id-101'/>
+ <pointer-type-def type-id='type-id-88' size-in-bits='64' id='type-id-102'/>
+ <pointer-type-def type-id='type-id-84' size-in-bits='64' id='type-id-85'/>
+ <class-decl name='static_tree_desc_s' is-struct='yes' visibility='default' is-declaration-only='yes' id='type-id-57'/>
+ <function-decl name='cpu_check_features' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='23' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='deflate_stored' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='111' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_fast' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='112' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_quick' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='113' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_medium' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='115' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_slow' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='117' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_rle' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='118' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='deflate_huff' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='119' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-79'/>
+ </function-decl>
+ <function-decl name='update_hash_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='124' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='125' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_roll' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='126' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2' mangled-name='zng_deflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='192' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit_' mangled-name='zng_deflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='329' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateInit2_' mangled-name='zng_deflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='method' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='336' column='1'/>
+ <parameter type-id='type-id-34' name='memLevel' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='337' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetDictionary' mangled-name='zng_deflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='366' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetDictionary' mangled-name='zng_deflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-42' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <parameter type-id='type-id-98' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='425' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateResetKeep' mangled-name='zng_deflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='444' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateReset' mangled-name='zng_deflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='483' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetHeader' mangled-name='zng_deflateSetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <parameter type-id='type-id-18' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='493' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePending' mangled-name='zng_deflatePending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflatePending@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-98' name='pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <parameter type-id='type-id-95' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='501' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflatePrime' mangled-name='zng_deflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='512' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateParams' mangled-name='zng_deflateParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <parameter type-id='type-id-34' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='540' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateTune' mangled-name='zng_deflateTune' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateTune@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='good_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_lazy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='nice_length' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <parameter type-id='type-id-34' name='max_chain' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='583' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateBound' mangled-name='zng_deflateBound' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateBound@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <parameter type-id='type-id-4' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='613' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_deflateCopy' mangled-name='zng_deflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <parameter type-id='type-id-15' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1045' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateSetParams' mangled-name='zng_deflateSetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateSetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-102' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <parameter type-id='type-id-9' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1309' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_deflateGetParams' mangled-name='zng_deflateGetParams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_deflateGetParams@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-102' name='params' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <parameter type-id='type-id-9' name='count' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.c' line='1385' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_tr_init' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='380' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='382' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_tr_align' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='383' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_tr_stored_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='384' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_zcalloc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='129' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='zng_zcfree' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='130' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_alloc_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='135' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-100'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='zng_free_aligned' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='136' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-101'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-96'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-20'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-97'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-99'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_fast.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_fill_window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='376' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_tr_flush_block' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='381' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <parameter type-id='type-id-32'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_flush_pending' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='50' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_stored.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_read_buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate_p.h' line='51' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-16'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-3'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <typedef-decl name='crc32_fold' type-id='type-id-24' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='14' column='1' id='type-id-103'/>
+ <class-decl name='functable_s' size-in-bits='1088' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='19' column='1' id='type-id-104'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='adler32' type-id='type-id-105' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='20' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='adler32_fold_copy' type-id='type-id-106' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='21' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='crc32' type-id='type-id-105' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='22' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='crc32_fold_reset' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='23' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='crc32_fold_copy' type-id='type-id-108' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='24' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='crc32_fold' type-id='type-id-109' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='25' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='crc32_fold_final' type-id='type-id-107' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='26' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='compare256' type-id='type-id-110' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='27' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='chunksize' type-id='type-id-111' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='chunkmemset_safe' type-id='type-id-112' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='inflate_fast' type-id='type-id-113' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='30' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='insert_string' type-id='type-id-77' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='31' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='longest_match' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='32' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='longest_match_slow' type-id='type-id-114' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='33' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='quick_insert_string' type-id='type-id-78' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='34' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='slide_hash' type-id='type-id-115' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='35' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='update_hash' type-id='type-id-76' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='36' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-103' size-in-bits='64' id='type-id-116'/>
+ <pointer-type-def type-id='type-id-24' size-in-bits='64' id='type-id-117'/>
+ <pointer-type-def type-id='type-id-118' size-in-bits='64' id='type-id-111'/>
+ <pointer-type-def type-id='type-id-119' size-in-bits='64' id='type-id-110'/>
+ <pointer-type-def type-id='type-id-120' size-in-bits='64' id='type-id-107'/>
+ <pointer-type-def type-id='type-id-121' size-in-bits='64' id='type-id-114'/>
+ <pointer-type-def type-id='type-id-122' size-in-bits='64' id='type-id-105'/>
+ <pointer-type-def type-id='type-id-123' size-in-bits='64' id='type-id-106'/>
+ <pointer-type-def type-id='type-id-124' size-in-bits='64' id='type-id-112'/>
+ <pointer-type-def type-id='type-id-125' size-in-bits='64' id='type-id-109'/>
+ <pointer-type-def type-id='type-id-126' size-in-bits='64' id='type-id-108'/>
+ <pointer-type-def type-id='type-id-127' size-in-bits='64' id='type-id-115'/>
+ <pointer-type-def type-id='type-id-128' size-in-bits='64' id='type-id-113'/>
+ <function-decl name='adler32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/adler32_fold.h' line='9' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='28' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_ssse3' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='36' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='39' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_avx512' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='42' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_avx512_vnni' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='45' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_fold_copy_sse42' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='53' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_fold_copy_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='56' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_fold_copy_avx512' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='59' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='adler32_fold_copy_avx512_vnni' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='62' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_pclmulqdq_reset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='67' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_pclmulqdq_copy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='68' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='crc32_fold_pclmulqdq' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='69' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='crc32_fold_pclmulqdq_final' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='70' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_pclmulqdq' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='71' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunksize_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='75' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='76' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='chunksize_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='78' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='79' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_sse41' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='82' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='chunksize_avx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='85' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='chunkmemset_safe_avx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='86' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='inflate_fast_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='104' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='inflate_fast_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='106' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='inflate_fast_sse41' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='109' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='inflate_fast_avx' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='112' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_crc32_braid' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='124' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_unaligned_64' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='143' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='147' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='compare256_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='150' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='161' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='insert_string_sse4' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='163' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='longest_match_unaligned_64' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='176' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='180' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='183' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_unaligned_64' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='198' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='202' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='longest_match_slow_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='205' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='215' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='quick_insert_string_sse4' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='217' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-55'/>
+ <return type-id='type-id-20'/>
+ </function-decl>
+ <function-decl name='slide_hash_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='226' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='slide_hash_avx2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='237' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='update_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='241' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='update_hash_sse4' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/cpu_features.h' line='243' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_reset_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='16' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='crc32_fold_copy_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='17' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='crc32_fold_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='18' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='crc32_fold_final_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/crc32_fold.h' line='19' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-116'/>
+ <return type-id='type-id-6'/>
+ </function-decl>
+ <function-decl name='slide_hash_c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/deflate.h' line='377' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <var-decl name='functable' type-id='type-id-104' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/functable.h' line='39' column='1'/>
+ <function-type size-in-bits='64' id='type-id-118'>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-119'>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-41'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-120'>
+ <parameter type-id='type-id-117'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-121'>
+ <parameter type-id='type-id-94'/>
+ <parameter type-id='type-id-20'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-122'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-123'>
+ <parameter type-id='type-id-6'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-124'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-125'>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-126'>
+ <parameter type-id='type-id-117'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-127'>
+ <parameter type-id='type-id-93'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-128'>
+ <parameter type-id='type-id-15'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-12'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <type-decl name='variadic parameter type' id='type-id-129'/>
+ <typedef-decl name='gzFile' type-id='type-id-130' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1285' column='1' id='type-id-131'/>
+ <class-decl name='gzFile_s' size-in-bits='192' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1790' column='1' id='type-id-132'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='have' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1791' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='next' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1792' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='pos' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1793' column='1'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-132' size-in-bits='64' id='type-id-130'/>
+ <pointer-type-def type-id='type-id-17' size-in-bits='64' id='type-id-133'/>
+ <function-decl name='zng_gzopen' mangled-name='zng_gzopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-43' name='path' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <parameter type-id='type-id-43' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='215' column='1'/>
+ <return type-id='type-id-131'/>
+ </function-decl>
+ <function-decl name='zng_gzdopen' mangled-name='zng_gzdopen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzdopen@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-17' name='fd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <parameter type-id='type-id-43' name='mode' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='226' column='1'/>
+ <return type-id='type-id-131'/>
+ </function-decl>
+ <function-decl name='zng_gzclose' mangled-name='zng_gzclose' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='245' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzbuffer' mangled-name='zng_gzbuffer' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzbuffer@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <parameter type-id='type-id-3' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='260' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzrewind' mangled-name='zng_gzrewind' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzrewind@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='284' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzseek' mangled-name='zng_gzseek' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzseek@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-8' name='offset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <parameter type-id='type-id-17' name='whence' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='304' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_gztell' mangled-name='zng_gztell' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gztell@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='385' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_gzoffset' mangled-name='zng_gzoffset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzoffset@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='411' column='1'/>
+ <return type-id='type-id-8'/>
+ </function-decl>
+ <function-decl name='zng_gzeof' mangled-name='zng_gzeof' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzeof@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='442' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzerror' mangled-name='zng_gzerror' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzerror@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <parameter type-id='type-id-133' name='errnum' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='457' column='1'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='zng_gzclearerr' mangled-name='zng_gzclearerr' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclearerr@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzlib.c' line='474' column='1'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_r' mangled-name='zng_gzclose_r' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1641' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose_r@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_gzclose_w' mangled-name='zng_gzclose_w' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1643' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzclose_w@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='malloc' filepath='/usr/include/stdlib.h' line='540' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='strlen' filepath='/usr/include/string.h' line='407' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-43'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='lseek64' filepath='/usr/include/unistd.h' line='350' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-7'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-7'/>
+ </function-decl>
+ <function-decl name='__open_2' filepath='/usr/include/x86_64-linux-gnu/bits/fcntl2.h' line='26' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-43'/>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='__open_too_many_args' filepath='/usr/include/x86_64-linux-gnu/bits/fcntl2.h' line='35' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='__open_missing_mode' filepath='/usr/include/x86_64-linux-gnu/bits/fcntl2.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='__va_list_tag' size-in-bits='192' is-struct='yes' visibility='default' id='type-id-134'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='gp_offset' type-id='type-id-3' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='32'>
+ <var-decl name='fp_offset' type-id='type-id-3' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='overflow_arg_area' type-id='type-id-45' visibility='default'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='reg_save_area' type-id='type-id-45' visibility='default'/>
+ </data-member>
+ </class-decl>
+ <pointer-type-def type-id='type-id-134' size-in-bits='64' id='type-id-135'/>
+ <function-decl name='zng_gzwrite' mangled-name='zng_gzwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='234' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzfwrite' mangled-name='zng_gzfwrite' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzfwrite@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-9' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-9' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='258' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzputc' mangled-name='zng_gzputc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzputc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <parameter type-id='type-id-17' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='287' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzputs' mangled-name='zng_gzputs' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzputs@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <parameter type-id='type-id-43' name='s' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='332' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzvprintf' mangled-name='zng_gzvprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzvprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-43' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <parameter type-id='type-id-135' name='va' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='356' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzprintf' mangled-name='zng_gzprintf' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzprintf@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter type-id='type-id-43' name='format' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='412' column='1'/>
+ <parameter is-variadic='yes'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzflush' mangled-name='zng_gzflush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzflush@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <parameter type-id='type-id-17' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='423' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzsetparams' mangled-name='zng_gzsetparams' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzsetparams@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-17' name='level' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <parameter type-id='type-id-17' name='strategy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzwrite.c' line='452' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='write' filepath='/usr/include/unistd.h' line='378' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-136'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-137' size-in-bits='61568' id='type-id-138'>
+ <subrange length='1924' type-id='type-id-4' id='type-id-139'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='4608' id='type-id-140'>
+ <subrange length='288' type-id='type-id-4' id='type-id-141'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-63' size-in-bits='5120' id='type-id-142'>
+ <subrange length='320' type-id='type-id-4' id='type-id-143'/>
+ </array-type-def>
+ <enum-decl name='inflate_mode' naming-typedef-id='type-id-144' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='25' column='1' id='type-id-145'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='HEAD' value='16180'/>
+ <enumerator name='FLAGS' value='16181'/>
+ <enumerator name='TIME' value='16182'/>
+ <enumerator name='OS' value='16183'/>
+ <enumerator name='EXLEN' value='16184'/>
+ <enumerator name='EXTRA' value='16185'/>
+ <enumerator name='NAME' value='16186'/>
+ <enumerator name='COMMENT' value='16187'/>
+ <enumerator name='HCRC' value='16188'/>
+ <enumerator name='DICTID' value='16189'/>
+ <enumerator name='DICT' value='16190'/>
+ <enumerator name='TYPE' value='16191'/>
+ <enumerator name='TYPEDO' value='16192'/>
+ <enumerator name='STORED' value='16193'/>
+ <enumerator name='COPY_' value='16194'/>
+ <enumerator name='COPY' value='16195'/>
+ <enumerator name='TABLE' value='16196'/>
+ <enumerator name='LENLENS' value='16197'/>
+ <enumerator name='CODELENS' value='16198'/>
+ <enumerator name='LEN_' value='16199'/>
+ <enumerator name='LEN' value='16200'/>
+ <enumerator name='LENEXT' value='16201'/>
+ <enumerator name='DIST' value='16202'/>
+ <enumerator name='DISTEXT' value='16203'/>
+ <enumerator name='MATCH' value='16204'/>
+ <enumerator name='LIT' value='16205'/>
+ <enumerator name='CHECK' value='16206'/>
+ <enumerator name='LENGTH' value='16207'/>
+ <enumerator name='DONE' value='16208'/>
+ <enumerator name='BAD' value='16209'/>
+ <enumerator name='MEM' value='16210'/>
+ <enumerator name='SYNC' value='16211'/>
+ </enum-decl>
+ <typedef-decl name='inflate_mode' type-id='type-id-145' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='58' column='1' id='type-id-144'/>
+ <class-decl name='inflate_state' size-in-bits='73216' is-struct='yes' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='87' column='1' id='type-id-146'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='strm' type-id='type-id-15' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='88' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='64'>
+ <var-decl name='mode' type-id='type-id-144' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='89' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='96'>
+ <var-decl name='last' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='90' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='128'>
+ <var-decl name='wrap' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='91' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='160'>
+ <var-decl name='havedict' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='93' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='flags' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='94' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='dmax' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='96' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='check' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='97' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='total' type-id='type-id-4' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='98' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='head' type-id='type-id-18' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='99' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='wbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='101' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='480'>
+ <var-decl name='wsize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='102' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='whave' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='103' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='wnext' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='window' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='105' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='crc_fold' type-id='type-id-24' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='107' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1184'>
+ <var-decl name='hold' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1216'>
+ <var-decl name='bits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1248'>
+ <var-decl name='length' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1280'>
+ <var-decl name='offset' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1312'>
+ <var-decl name='extra' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1344'>
+ <var-decl name='lencode' type-id='type-id-147' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1408'>
+ <var-decl name='distcode' type-id='type-id-147' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1472'>
+ <var-decl name='lenbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1504'>
+ <var-decl name='distbits' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1536'>
+ <var-decl name='ncode' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1568'>
+ <var-decl name='nlen' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1600'>
+ <var-decl name='ndist' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1632'>
+ <var-decl name='have' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='126' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1664'>
+ <var-decl name='next' type-id='type-id-148' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1728'>
+ <var-decl name='lens' type-id='type-id-142' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='6848'>
+ <var-decl name='work' type-id='type-id-140' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='129' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='11456'>
+ <var-decl name='codes' type-id='type-id-138' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73024'>
+ <var-decl name='sane' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73056'>
+ <var-decl name='back' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='132' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73088'>
+ <var-decl name='was' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='133' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='73120'>
+ <var-decl name='chunksize' type-id='type-id-6' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='134' column='1'/>
+ </data-member>
+ </class-decl>
+ <class-decl name='code' size-in-bits='32' is-struct='yes' naming-typedef-id='type-id-137' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='27' column='1' id='type-id-149'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='op' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='28' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='8'>
+ <var-decl name='bits' type-id='type-id-2' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='29' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='16'>
+ <var-decl name='val' type-id='type-id-63' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='30' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='code' type-id='type-id-149' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='31' column='1' id='type-id-137'/>
+ <enum-decl name='codetype' naming-typedef-id='type-id-150' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='57' column='1' id='type-id-151'>
+ <underlying-type type-id='type-id-67'/>
+ <enumerator name='CODES' value='0'/>
+ <enumerator name='LENS' value='1'/>
+ <enumerator name='DISTS' value='2'/>
+ </enum-decl>
+ <typedef-decl name='codetype' type-id='type-id-151' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='61' column='1' id='type-id-150'/>
+ <typedef-decl name='in_func' type-id='type-id-152' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1075' column='1' id='type-id-153'/>
+ <typedef-decl name='out_func' type-id='type-id-154' filepath='/mnt/c/build/git/zlib-ng/btmp1/zlib-ng.h' line='1076' column='1' id='type-id-155'/>
+ <pointer-type-def type-id='type-id-137' size-in-bits='64' id='type-id-148'/>
+ <pointer-type-def type-id='type-id-148' size-in-bits='64' id='type-id-156'/>
+ <qualified-type-def type-id='type-id-137' const='yes' id='type-id-157'/>
+ <pointer-type-def type-id='type-id-157' size-in-bits='64' id='type-id-147'/>
+ <pointer-type-def type-id='type-id-41' size-in-bits='64' id='type-id-158'/>
+ <pointer-type-def type-id='type-id-146' size-in-bits='64' id='type-id-159'/>
+ <pointer-type-def type-id='type-id-160' size-in-bits='64' id='type-id-154'/>
+ <pointer-type-def type-id='type-id-161' size-in-bits='64' id='type-id-152'/>
+ <pointer-type-def type-id='type-id-63' size-in-bits='64' id='type-id-162'/>
+ <pointer-type-def type-id='type-id-3' size-in-bits='64' id='type-id-163'/>
+ <function-decl name='zng_inflateBackInit' mangled-name='zng_inflateBackInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <parameter type-id='type-id-42' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='34' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackInit_' mangled-name='zng_inflateBackInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-42' name='window' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='63' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='64' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBack' mangled-name='zng_inflateBack' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBack@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-153' name='in' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-45' name='in_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-155' name='out' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <parameter type-id='type-id-45' name='out_desc' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='142' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateBackEnd' mangled-name='zng_inflateBackEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateBackEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/infback.c' line='504' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_fixedtables' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.h' line='138' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-159'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='zng_inflate_table' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inftrees.h' line='63' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-150'/>
+ <parameter type-id='type-id-162'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-156'/>
+ <parameter type-id='type-id-163'/>
+ <parameter type-id='type-id-162'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-type size-in-bits='64' id='type-id-160'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-6'/>
+ <return type-id='type-id-34'/>
+ </function-type>
+ <function-type size-in-bits='64' id='type-id-161'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-158'/>
+ <return type-id='type-id-6'/>
+ </function-type>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_inflateResetKeep' mangled-name='zng_inflateResetKeep' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateResetKeep@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='62' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset' mangled-name='zng_inflateReset' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateReset@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='89' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateReset2' mangled-name='zng_inflateReset2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateReset2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='101' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2' mangled-name='zng_inflateInit2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit2@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='139' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit' mangled-name='zng_inflateInit' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit@@ZLIB_NG_2.1.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='172' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit_' mangled-name='zng_inflateInit_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='178' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateInit2_' mangled-name='zng_inflateInit2_' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateInit2_@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='windowBits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-43' name='version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <parameter type-id='type-id-34' name='stream_size' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='185' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflatePrime' mangled-name='zng_inflatePrime' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflatePrime@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='bits' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <parameter type-id='type-id-34' name='value' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='191' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflate' mangled-name='zng_inflate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <parameter type-id='type-id-34' name='flush' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='414' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateEnd' mangled-name='zng_inflateEnd' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateEnd@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1138' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetDictionary' mangled-name='zng_inflateGetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateGetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-42' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <parameter type-id='type-id-98' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1151' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSetDictionary' mangled-name='zng_inflateSetDictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSetDictionary@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-41' name='dictionary' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <parameter type-id='type-id-6' name='dictLength' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1171' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateGetHeader' mangled-name='zng_inflateGetHeader' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateGetHeader@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <parameter type-id='type-id-18' name='head' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1204' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSync' mangled-name='zng_inflateSync' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSync@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1249' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateSyncPoint' mangled-name='zng_inflateSyncPoint' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateSyncPoint@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1310' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateCopy' mangled-name='zng_inflateCopy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateCopy@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <parameter type-id='type-id-15' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1320' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateUndermine' mangled-name='zng_inflateUndermine' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateUndermine@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <parameter type-id='type-id-34' name='subvert' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1362' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateValidate' mangled-name='zng_inflateValidate' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateValidate@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <parameter type-id='type-id-34' name='check' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1378' column='1'/>
+ <return type-id='type-id-34'/>
+ </function-decl>
+ <function-decl name='zng_inflateMark' mangled-name='zng_inflateMark' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateMark@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1391' column='1'/>
+ <return type-id='type-id-1'/>
+ </function-decl>
+ <function-decl name='zng_inflateCodesUsed' mangled-name='zng_inflateCodesUsed' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_inflateCodesUsed@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-15' name='strm' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/inflate.c' line='1403' column='1'/>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-164' size-in-bits='9216' id='type-id-165'>
+ <subrange length='288' type-id='type-id-4' id='type-id-141'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-164' size-in-bits='960' id='type-id-166'>
+ <subrange length='30' type-id='type-id-4' id='type-id-167'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-168' size-in-bits='928' id='type-id-169'>
+ <subrange length='29' type-id='type-id-4' id='type-id-170'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-168' size-in-bits='960' id='type-id-171'>
+ <subrange length='30' type-id='type-id-4' id='type-id-167'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='2048' id='type-id-172'>
+ <subrange length='256' type-id='type-id-4' id='type-id-173'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-10' size-in-bits='4096' id='type-id-174'>
+ <subrange length='512' type-id='type-id-4' id='type-id-175'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-71' const='yes' id='type-id-164'/>
+ <qualified-type-def type-id='type-id-17' const='yes' id='type-id-168'/>
+ <var-decl name='static_ltree' type-id='type-id-165' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='14' column='1'/>
+ <var-decl name='static_dtree' type-id='type-id-166' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='15' column='1'/>
+ <var-decl name='zng_dist_code' type-id='type-id-174' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='17' column='1'/>
+ <var-decl name='zng_length_code' type-id='type-id-172' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='18' column='1'/>
+ <var-decl name='base_length' type-id='type-id-169' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='20' column='1'/>
+ <var-decl name='base_dist' type-id='type-id-171' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/trees_emit.h' line='21' column='1'/>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <function-decl name='zng_uncompress2' mangled-name='zng_uncompress2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_uncompress2@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <parameter type-id='type-id-52' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='25' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_uncompress' mangled-name='zng_uncompress' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_uncompress@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-16' name='dest' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-52' name='destLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-11' name='source' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <parameter type-id='type-id-9' name='sourceLen' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/uncompr.c' line='78' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <array-type-def dimensions='1' type-id='type-id-176' size-in-bits='640' id='type-id-177'>
+ <subrange length='10' type-id='type-id-4' id='type-id-178'/>
+ </array-type-def>
+ <array-type-def dimensions='1' type-id='type-id-50' size-in-bits='304' id='type-id-179'>
+ <subrange length='38' type-id='type-id-4' id='type-id-180'/>
+ </array-type-def>
+ <qualified-type-def type-id='type-id-43' const='yes' id='type-id-176'/>
+ <pointer-type-def type-id='type-id-45' size-in-bits='64' id='type-id-181'/>
+ <var-decl name='zng_vstring' type-id='type-id-179' mangled-name='zng_vstring' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='23' column='1' elf-symbol-id='zng_vstring@@ZLIB_NG_2.0.0'/>
+ <function-decl name='zlibng_version' mangled-name='zlibng_version' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='31' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zlibng_version@@ZLIB_NG_2.1.0'>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <function-decl name='zng_zlibCompileFlags' mangled-name='zng_zlibCompileFlags' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='36' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_zlibCompileFlags@@ZLIB_NG_2.0.0'>
+ <return type-id='type-id-4'/>
+ </function-decl>
+ <function-decl name='zng_zError' mangled-name='zng_zError' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_zError@@ZLIB_NG_2.0.0'>
+ <parameter type-id='type-id-17' name='err' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.c' line='99' column='1'/>
+ <return type-id='type-id-43'/>
+ </function-decl>
+ <var-decl name='zng_z_errmsg' type-id='type-id-177' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/zutil.h' line='24' column='1'/>
+ <function-decl name='free' filepath='/usr/include/stdlib.h' line='555' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='posix_memalign' filepath='/usr/include/stdlib.h' line='586' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-181'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/chunkset_avx.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/x86' language='LANG_C11'>
+ <function-decl name='chunkmemset_sse41' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/chunkset_tpl.h' line='9' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-3'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/chunkset_sse41.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/x86' language='LANG_C11'>
+ <function-decl name='chunkcopy_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/chunkset_sse41.c' line='88' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-3'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ <function-decl name='chunkunroll_sse2' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/chunkset_sse41.c' line='89' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-163'/>
+ <parameter type-id='type-id-163'/>
+ <return type-id='type-id-42'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/crc32_fold_pclmulqdq.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1/arch/x86' language='LANG_C11'>
+ <type-decl name='long long int' size-in-bits='64' id='type-id-182'/>
+ <array-type-def dimensions='1' type-id='type-id-182' size-in-bits='128' id='type-id-183'>
+ <subrange length='2' id='type-id-184'/>
+ </array-type-def>
+ <typedef-decl name='__m128i' type-id='type-id-183' filepath='/usr/lib/gcc/x86_64-linux-gnu/11/include/emmintrin.h' line='53' column='1' id='type-id-185'/>
+ <pointer-type-def type-id='type-id-185' size-in-bits='64' id='type-id-186'/>
+ <function-decl name='fold_16_vpclmulqdq' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/crc32_fold_pclmulqdq.c' line='35' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-186'/>
+ <parameter type-id='type-id-186'/>
+ <parameter type-id='type-id-186'/>
+ <parameter type-id='type-id-186'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-185'/>
+ <parameter type-id='type-id-34'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='fold_16_vpclmulqdq_copy' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/arch/x86/crc32_fold_pclmulqdq.c' line='38' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-186'/>
+ <parameter type-id='type-id-186'/>
+ <parameter type-id='type-id-186'/>
+ <parameter type-id='type-id-186'/>
+ <parameter type-id='type-id-42'/>
+ <parameter type-id='type-id-41'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ </abi-instr>
+ <abi-instr address-size='64' path='gzread.c' comp-dir-path='/mnt/c/build/git/zlib-ng/btmp1' language='LANG_C11'>
+ <class-decl name='gz_state' size-in-bits='1856' is-struct='yes' naming-typedef-id='type-id-187' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='102' column='1' id='type-id-188'>
+ <data-member access='public' layout-offset-in-bits='0'>
+ <var-decl name='x' type-id='type-id-132' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='104' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='192'>
+ <var-decl name='mode' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='109' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='224'>
+ <var-decl name='fd' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='110' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='256'>
+ <var-decl name='path' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='111' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='320'>
+ <var-decl name='size' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='112' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='352'>
+ <var-decl name='want' type-id='type-id-3' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='113' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='384'>
+ <var-decl name='in' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='114' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='448'>
+ <var-decl name='out' type-id='type-id-16' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='115' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='512'>
+ <var-decl name='direct' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='116' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='544'>
+ <var-decl name='how' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='118' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='576'>
+ <var-decl name='start' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='119' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='640'>
+ <var-decl name='eof' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='120' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='672'>
+ <var-decl name='past' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='121' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='704'>
+ <var-decl name='level' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='123' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='736'>
+ <var-decl name='strategy' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='124' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='768'>
+ <var-decl name='reset' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='125' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='832'>
+ <var-decl name='skip' type-id='type-id-8' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='127' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='896'>
+ <var-decl name='seek' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='128' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='928'>
+ <var-decl name='err' type-id='type-id-17' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='130' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='960'>
+ <var-decl name='msg' type-id='type-id-32' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='131' column='1'/>
+ </data-member>
+ <data-member access='public' layout-offset-in-bits='1024'>
+ <var-decl name='strm' type-id='type-id-46' visibility='default' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='133' column='1'/>
+ </data-member>
+ </class-decl>
+ <typedef-decl name='gz_state' type-id='type-id-188' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='134' column='1' id='type-id-187'/>
+ <typedef-decl name='ssize_t' type-id='type-id-189' filepath='/usr/include/stdio.h' line='77' column='1' id='type-id-136'/>
+ <typedef-decl name='__ssize_t' type-id='type-id-1' filepath='/usr/include/x86_64-linux-gnu/bits/types.h' line='194' column='1' id='type-id-189'/>
+ <pointer-type-def type-id='type-id-187' size-in-bits='64' id='type-id-190'/>
+ <function-decl name='zng_gzread' mangled-name='zng_gzread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <parameter type-id='type-id-3' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='345' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzfread' mangled-name='zng_gzfread' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzfread@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-45' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-9' name='size' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-9' name='nitems' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='377' column='1'/>
+ <return type-id='type-id-9'/>
+ </function-decl>
+ <function-decl name='zng_gzgetc' mangled-name='zng_gzgetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzgetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='409' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzungetc' mangled-name='zng_gzungetc' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzungetc@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-17' name='c' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='440' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='zng_gzgets' mangled-name='zng_gzgets' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzgets@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-32' name='buf' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <parameter type-id='type-id-17' name='len' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='496' column='1'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='zng_gzdirect' mangled-name='zng_gzdirect' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='zng_gzdirect@@ZLIB_NG_GZ_2.0.0'>
+ <parameter type-id='type-id-131' name='file' filepath='/mnt/c/build/git/zlib-ng/btmp1/gzread.c' line='557' column='1'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='gz_error' filepath='/mnt/c/build/git/zlib-ng/btmp1/src.d/gzguts.h' line='138' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-190'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-43'/>
+ <return type-id='type-id-12'/>
+ </function-decl>
+ <function-decl name='__errno_location' filepath='/usr/include/errno.h' line='37' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <return type-id='type-id-133'/>
+ </function-decl>
+ <function-decl name='memchr' filepath='/usr/include/string.h' line='107' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-45'/>
+ </function-decl>
+ <function-decl name='strerror' filepath='/usr/include/string.h' line='419' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-32'/>
+ </function-decl>
+ <function-decl name='close' filepath='/usr/include/unistd.h' line='358' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <return type-id='type-id-17'/>
+ </function-decl>
+ <function-decl name='__read_chk' filepath='/usr/include/x86_64-linux-gnu/bits/unistd.h' line='23' column='1' visibility='default' binding='global' size-in-bits='64'>
+ <parameter type-id='type-id-17'/>
+ <parameter type-id='type-id-45'/>
+ <parameter type-id='type-id-9'/>
+ <parameter type-id='type-id-9'/>
+ <return type-id='type-id-136'/>
+ </function-decl>
+ </abi-instr>
+</abi-corpus>
diff --git a/neozip/test/abicheck.md b/neozip/test/abicheck.md
new file mode 100644
index 0000000000..57337f5882
--- /dev/null
+++ b/neozip/test/abicheck.md
@@ -0,0 +1,59 @@
+ABI Compatibility test
+----------------------
+
+abicheck.sh uses libabigail to check ABI stability.
+It will abort if the current source
+tree has a change that breaks binary compatibility.
+
+This protects against the common scenario where:
+- an app is compiled against the current zlib-ng
+- the system package manager updates the zlib-ng shared library
+- the app now crashes because some symbol is
+ missing or some public structure or parameter
+ has changed type or size
+
+If run with --zlib-compat, it verifies that the
+current source tree generates a library that
+is ABI-compatible with the reference release
+of classic zlib. This ensures that building
+zlib-ng with --zlib-compat does what it says on the tin.
+
+abicheck.sh is not perfect, but it can catch
+many common compatibility issues.
+
+Cached files test/abi/*.abi
+---------------------------
+
+Comparing to the old version of zlib (or zlib-ng)
+means someone has to check out and build
+the previous source tree and extract its .abi
+using abidw. This can be slow.
+
+If you don't mind the slowness, run abicheck.sh --refresh-if,
+and it will download and build the reference version
+and extract the .abi on the spot if needed.
+(FIXME: should this be the default?)
+
+On the next run, the reference .abi file will already be
+present, and that step will be skipped.
+It's stored in the tests/abi directory,
+in a file with the architecture and git hash in the name.
+
+If you're running continuous integration
+which clear out the source tree on each run,
+and you don't want your build machines
+constantly downloading and building the old
+version, you can check the .abi file into git.
+
+To make this easier, a helper script could be written to automatically build
+all the configurations tested by .github/workflows/abicheck.yml
+Then they could be checked into git en masse by a maintainer
+when a new platform is added or a new major version (which
+intentionally breaks backwards compatibility) is being prepared.
+
+Further reading
+---------------
+
+- https://sourceware.org/libabigail/manual/
+- https://developers.redhat.com/blog/2014/10/23/comparing-abis-for-compatibility-with-libabigail-part-1/
+- https://developers.redhat.com/blog/2020/04/02/how-to-write-an-abi-compliance-checker-using-libabigail/
diff --git a/neozip/test/abicheck.sh b/neozip/test/abicheck.sh
new file mode 100755
index 0000000000..1656711f62
--- /dev/null
+++ b/neozip/test/abicheck.sh
@@ -0,0 +1,163 @@
+#!/bin/sh
+set -ex
+TESTDIR="$(cd $(dirname "$0"); pwd)"
+
+usage() {
+ cat <<_EOF_
+Usage: $0 [--zlib-compat][--refresh][--refresh-if]
+
+Build shared library with -ggdb, then compare its ABI to the stable
+ABI, and abort if differences found.
+
+Options:
+--zlib-compat - check the ABI of the zlib-compatible flavor of zlib-ng.
+--refresh - build the reference library and extract its ABI rather than using a stored ABI file.
+--refresh-if - refresh only if ABI file not present.
+
+Obeys CHOST, CONFIGURE_ARGS, CFLAGS, and LDFLAGS.
+
+Requires libabigail (on Ubuntu, install package abigail-tools).
+_EOF_
+}
+
+# Print the multiarch tuple for the current (non-cross) machine,
+# or the empty string if unavailable.
+detect_chost() {
+ dpkg-architecture -qDEB_HOST_MULTIARCH ||
+ $CC -print-multiarch ||
+ $CC -print-search-dirs | sed 's/:/\n/g' | grep -E '^/lib/[^/]+$' | sed 's%.*/%%' ||
+ true
+}
+
+if ! test -f "configure"
+then
+ echo "Please run from top of source tree"
+ exit 1
+fi
+
+suffix="-ng"
+CONFIGURE_ARGS_NG="$CONFIGURE_ARGS"
+refresh=false
+refresh_if=false
+for arg
+do
+ case "$arg" in
+ --zlib-compat)
+ suffix=""
+ CONFIGURE_ARGS_NG="$CONFIGURE_ARGS_NG --zlib-compat"
+ ;;
+ --refresh)
+ refresh=true
+ ;;
+ --refresh-if)
+ refresh_if=true
+ ;;
+ --help)
+ usage
+ exit 0
+ ;;
+ *)
+ echo "Unknown arg '$arg'"
+ usage
+ exit 1
+ ;;
+ esac
+done
+
+# Choose reference repo and commit
+if test "$suffix" = ""
+then
+ # Reference is zlib 1.2.13.
+ ABI_GIT_REPO=https://github.com/madler/zlib.git
+ ABI_GIT_COMMIT=04f42ceca40f73e2978b50e93806c2a18c1281fc
+else
+ # Reference is most recent zlib-ng develop with zlib 1.2.12 compatible api.
+ ABI_GIT_REPO=https://github.com/zlib-ng/zlib-ng.git
+ ABI_GIT_COMMIT=e4614ebcb9b3e5b108dc983c155e4baf80882311
+fi
+
+# Test compat build for ABI compatibility with zlib
+if test "$CHOST" = ""
+then
+ # Note: don't export CHOST here, as we don't want configure seeing it
+ # when it's just the name for the build machine.
+ # Leave it as a plain shell variable, not an environment variable.
+ CHOST=$(detect_chost)
+ # Support -m32 for non-cross builds.
+ case "$CFLAGS" in
+ *-m32*) M32="-m32";;
+ *) M32="";;
+ esac
+fi
+
+# Canonicalize CHOST to work around bug in original zlib's configure
+# (Don't export it if it wasn't already exported, else may cause
+# default compiler detection failure and shared library link error
+# when building both zlib and zlib-ng.
+# See https://github.com/zlib-ng/zlib-ng/issues/1219)
+CHOST=$(sh $TESTDIR/../tools/config.sub $CHOST)
+
+if test "$CHOST" = ""
+then
+ echo "abicheck: SKIP, as we don't know CHOST"
+ exit 0
+fi
+
+ABIFILE="test/abi/zlib$suffix-$ABI_GIT_COMMIT-$CHOST$M32.abi"
+if ! $refresh && $refresh_if && ! test -f "$ABIFILE"
+then
+ refresh=true
+fi
+abidw --version
+
+if $refresh
+then
+ # Check out reference source
+ rm -rf btmp1
+ mkdir -p btmp1/src.d
+ cd btmp1/src.d
+ git init
+ git remote add origin $ABI_GIT_REPO
+ git fetch origin $ABI_GIT_COMMIT
+ git reset --hard FETCH_HEAD
+ cd ..
+ # Build unstripped, uninstalled, very debug shared library
+ CFLAGS="$CFLAGS -ggdb" src.d/configure $CONFIGURE_ARGS
+ make -j2
+ cd ..
+ # Find shared library, extract its abi
+ dylib1=$(find btmp1 -type f -name '*.dylib*' -print -o -type f -name '*.so.*' -print)
+ abidw $dylib1 > "$ABIFILE"
+ # Maintainers may wish to check $ABIFILE into git when a new
+ # target is added, or when a major release happens that is
+ # intended to change the ABI. Alternately, this script could
+ # just always rebuild the reference source, and dispense with
+ # caching abi files in git (but that would slow builds down).
+fi
+
+if ! test -f "$ABIFILE"
+then
+ echo "abicheck: SKIP: $ABIFILE not found; rerun with --refresh or --refresh-if"
+ exit 1
+fi
+
+# Build unstripped, uninstalled, very debug shared library
+rm -rf btmp2
+mkdir btmp2
+cd btmp2
+CFLAGS="$CFLAGS -ggdb" ../configure $CONFIGURE_ARGS_NG
+make -j2
+cd ..
+# Find shared library, extract its abi
+dylib2=$(find btmp2 -type f -name '*.dylib*' -print -o -type f -name '*.so.*' -print)
+abidw $dylib2 > btmp2/zlib${suffix}-built.abi
+
+# Compare it to the reference
+# FIXME: use --no-added-syms for now, but we probably want to be more strict.
+if abidiff --no-added-syms --suppressions test/abi/ignore "$ABIFILE" btmp2/zlib${suffix}-built.abi
+then
+ echo "abicheck: PASS"
+else
+ echo "abicheck: FAIL"
+ exit 1
+fi
diff --git a/neozip/test/add-subdirectory-project/CMakeLists.txt b/neozip/test/add-subdirectory-project/CMakeLists.txt
new file mode 100644
index 0000000000..a8da4521ba
--- /dev/null
+++ b/neozip/test/add-subdirectory-project/CMakeLists.txt
@@ -0,0 +1,13 @@
+cmake_minimum_required(VERSION 3.14...4.2.1)
+
+project(zlib-ng-add-subdirecory-test C)
+
+include(CTest)
+
+set(BUILD_SHARED_LIBS OFF)
+set(BUILD_TESTING ON CACHE BOOL "Build test binaries" FORCE)
+
+add_subdirectory(../.. zlib-ng)
+
+add_executable(app main.c)
+target_link_libraries(app zlib-ng-static)
diff --git a/neozip/test/add-subdirectory-project/main.c b/neozip/test/add-subdirectory-project/main.c
new file mode 100644
index 0000000000..638a35b1d3
--- /dev/null
+++ b/neozip/test/add-subdirectory-project/main.c
@@ -0,0 +1,7 @@
+#include <stdio.h>
+#include "zlib-ng.h"
+
+int main(void) {
+ printf("zlib-ng: %s\n", ZLIBNG_VERSION);
+ return 0;
+}
diff --git a/neozip/test/benchmarks/CMakeLists.txt b/neozip/test/benchmarks/CMakeLists.txt
new file mode 100644
index 0000000000..df6f5a7e69
--- /dev/null
+++ b/neozip/test/benchmarks/CMakeLists.txt
@@ -0,0 +1,126 @@
+cmake_minimum_required(VERSION 3.14...4.2.1)
+
+include(FetchContent)
+
+if(NOT DEFINED CMAKE_CXX_STANDARD)
+ set(CMAKE_CXX_STANDARD 11)
+endif()
+if(NOT DEFINED CMAKE_CXX_STANDARD_REQUIRED)
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
+endif()
+if(NOT DEFINED CMAKE_CXX_EXTENSIONS)
+ set(CMAKE_CXX_EXTENSIONS ON)
+endif()
+
+# Search for Google benchmark package
+find_package(benchmark QUIET)
+if(NOT benchmark_FOUND)
+ # Fetch google benchmark source code from official repository
+ set(BENCHMARK_ENABLE_TESTING OFF)
+
+ # Allow specifying alternative Google benchmark repository
+ if(NOT DEFINED GBENCHMARK_REPOSITORY)
+ set(GBENCHMARK_REPOSITORY https://github.com/google/benchmark.git)
+ endif()
+ if(NOT DEFINED GBENCHMARK_TAG)
+ set(GBENCHMARK_TAG v1.9.4)
+ endif()
+
+ FetchContent_Declare(benchmark
+ GIT_REPOSITORY ${GBENCHMARK_REPOSITORY}
+ GIT_TAG ${GBENCHMARK_TAG}
+ ${ZNG_FetchContent_Declare_EXCLUDE_FROM_ALL})
+
+ ZNG_FetchContent_MakeAvailable(benchmark)
+endif()
+
+# Public API benchmarks
+set(BENCH_PUBLIC_SRCS
+ benchmark_compress.cc
+ benchmark_inflate.cc
+ benchmark_uncompress.cc
+ benchmark_main.cc
+ )
+
+# Internal benchmarks
+set(BENCH_INTERNAL_SRCS
+ benchmark_adler32.cc
+ benchmark_adler32_copy.cc
+ benchmark_compare256.cc
+ benchmark_compare256_rle.cc
+ benchmark_crc32.cc
+ benchmark_crc32_copy.cc
+ benchmark_deflate.cc
+ benchmark_insert_string.cc
+ benchmark_slidehash.cc
+ )
+
+add_executable(benchmark_zlib ${BENCH_PUBLIC_SRCS})
+
+target_compile_definitions(benchmark_zlib PRIVATE -DBENCHMARK_STATIC_DEFINE)
+target_include_directories(benchmark_zlib PRIVATE
+ ${PROJECT_SOURCE_DIR}
+ ${PROJECT_BINARY_DIR}
+ ${benchmark_SOURCE_DIR}/benchmark/include)
+
+target_link_libraries(benchmark_zlib benchmark::benchmark)
+if(ZLIB_LIBRARY)
+ target_link_libraries(benchmark_zlib ${ZLIB_LIBRARY})
+else()
+ target_sources(benchmark_zlib PRIVATE ${BENCH_INTERNAL_SRCS})
+ target_link_libraries(benchmark_zlib zlib-ng-static)
+endif()
+
+if(WIN32)
+ target_link_libraries(benchmark_zlib shlwapi)
+endif()
+
+add_test(NAME benchmark_zlib
+ COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:benchmark_zlib> "--benchmark_min_time=0")
+
+if(WITH_BENCHMARK_APPS)
+ option(BUILD_ALT_BENCH "Link against alternative zlib implementation" OFF)
+
+ # Search for libpng package
+ find_package(PNG QUIET)
+
+ if(NOT PNG_FOUND)
+ FetchContent_Declare(PNG
+ GIT_REPOSITORY https://github.com/glennrp/libpng.git
+ ${ZNG_FetchContent_Declare_EXCLUDE_FROM_ALL})
+
+ ZNG_FetchContent_MakeAvailable(PNG)
+ set(PNG_INCLUDE_DIR ${png_SOURCE_DIR})
+ endif()
+
+ set(BENCH_APP_SRCS
+ benchmark_png_encode.cc
+ benchmark_png_decode.cc
+ benchmark_main.cc
+ )
+
+ add_executable(benchmark_zlib_apps ${BENCH_APP_SRCS})
+
+ if(DEFINED BUILD_ALT_BENCH)
+ set(ZLIB_ALT_LIB "libz.a" CACHE FILEPATH "Optional alternative zlib implementation (defaults to stock zlib)")
+ add_executable(benchmark_zlib_apps_alt ${BENCH_APP_SRCS})
+ target_link_libraries(benchmark_zlib_apps_alt libpng.a ${ZLIB_ALT_LIB} benchmark::benchmark)
+ target_compile_definitions(benchmark_zlib_apps_alt PRIVATE BUILD_ALT=1)
+ target_include_directories(benchmark_zlib_apps_alt PRIVATE
+ ${PROJECT_SOURCE_DIR}
+ ${PROJECT_BINARY_DIR}
+ ${PNG_INCLUDE_DIR}
+ ${benchmark_SOURCE_DIR}/benchmark/include)
+ endif()
+
+ target_include_directories(benchmark_zlib_apps PRIVATE
+ ${PROJECT_SOURCE_DIR}
+ ${PROJECT_BINARY_DIR}
+ ${PNG_INCLUDE_DIR}
+ ${benchmark_SOURCE_DIR}/benchmark/include)
+
+ # We need the static png library if we're statically linking to zlib,
+ # otherwise it will resolve these things in the system provided dynamic
+ # libraries (likely linked to stock zlib)
+ target_link_libraries(benchmark_zlib_apps libpng.a zlib-ng-static benchmark::benchmark)
+endif()
diff --git a/neozip/test/benchmarks/README.md b/neozip/test/benchmarks/README.md
new file mode 100644
index 0000000000..08ccea233e
--- /dev/null
+++ b/neozip/test/benchmarks/README.md
@@ -0,0 +1,63 @@
+## Benchmarks
+These benchmarks are written using [Google Benchmark](https://github.com/google/benchmark).
+
+*Repetitions*
+
+To increase the number of times each benchmark iteration is run use:
+
+```
+--benchmark_repetitions=20
+```
+
+*Filters*
+
+To filter out which benchmarks are performed use:
+
+```
+--benchmark_filter="adler32*"
+```
+
+There are two different benchmarks, micro and macro.
+
+### Benchmark benchmark_zlib
+These are microbenchmarks intended to test lower level subfunctions of the library.
+
+Benchmarks include implementations of:
+ - Adler32
+ - CRC
+ - 256 byte comparisons
+ - SIMD accelerated "slide hash" routine
+
+By default these benchmarks report things on the nanosecond scale and are small enough
+to measure very minute differences.
+
+*Alternative zlib library*
+
+To benchmark against an alternative zlib-compatible library, use the `ZLIB_LIBRARY`
+CMake argument. When set, only the public API benchmarks are built:
+
+```sh
+cmake -S . -B build-alt \
+ -DZLIB_COMPAT=ON \
+ -DBUILD_SHARED_LIBS=OFF \
+ -DBUILD_TESTING=ON \
+ -DWITH_BENCHMARKS=ON \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DWITH_RUNTIME_CPU_DETECTION=OFF \
+ -DZLIB_LIBRARY=/path/to/libz.a
+```
+
+### Benchmark benchmark_zlib_apps
+These benchmarks measure applications of zlib as a whole. Currently the only examples
+are PNG encoding and decoding. The PNG encode and decode tests leveraging procedurally
+generated and highly compressible image data.
+
+Additionally, a test called `png_decode_realistic` that will decode any RGB 8 BPP encoded
+set of PNGs in the working directory under a directory named "test_pngs" with files named
+{0..1}.png. If these images do not exist, they will error out and the benchmark will move
+on to the next set of benchmarks.
+
+*benchmark_zlib_apps_alt*
+
+The user can compile a comparison benchmark application linking to any zlib-compatible
+implementation of his or her choosing.
diff --git a/neozip/test/benchmarks/benchmark_adler32.cc b/neozip/test/benchmarks/benchmark_adler32.cc
new file mode 100644
index 0000000000..5ee9102e23
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_adler32.cc
@@ -0,0 +1,121 @@
+/* benchmark_adler32.cc -- benchmark adler32 variants
+ * Copyright (C) 2022 Nathan Moinvaziri, Adam Stylinski
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "arch_functions.h"
+# include "../test_cpu_features.h"
+}
+
+#define BUFSIZE ((4 * 1024 * 1024) + 64)
+
+class adler32: public benchmark::Fixture {
+private:
+ uint32_t *testdata;
+
+public:
+ void SetUp(::benchmark::State& state) {
+ testdata = (uint32_t *)zng_alloc_aligned(BUFSIZE, 64);
+ if (testdata == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ for (uint32_t i = 0; i < BUFSIZE/sizeof(uint32_t); i++) {
+ testdata[i] = rand();
+ }
+ }
+
+ // Benchmark Adler32, with rolling buffer misalignment for consistent results
+ void Bench(benchmark::State& state, adler32_func adler32, const int DO_ALIGNED) {
+ int misalign = 0;
+ uint32_t hash = 0;
+
+ for (auto _ : state) {
+ hash = adler32(hash, (const unsigned char*)testdata + misalign, (size_t)state.range(0));
+ if (misalign >= 63)
+ misalign = 0;
+ else
+ misalign += (DO_ALIGNED) ? 16 : 1;
+
+ // Prevent the result from being optimized away
+ benchmark::DoNotOptimize(hash);
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ zng_free_aligned(testdata);
+ }
+};
+
+#define BENCHMARK_ADLER32_MISALIGNED(name, hashfunc, support_flag) \
+ BENCHMARK_DEFINE_F(adler32, name)(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, hashfunc, 0); \
+ } \
+ BENCHMARK_REGISTER_F(adler32, name)->Arg(1)->Arg(8)->Arg(12)->Arg(16)->Arg(32)->Arg(64)->Arg(512)->Arg(4<<10)->Arg(32<<10)->Arg(256<<10)->Arg(4096<<10);
+
+// Aligned
+#define ALIGNED_NAME(name) name##_aligned
+#define BENCHMARK_ADLER32_ALIGNED(name, hashfunc, support_flag) \
+ BENCHMARK_DEFINE_F(adler32, ALIGNED_NAME(name))(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, hashfunc, 1); \
+ } \
+ BENCHMARK_REGISTER_F(adler32, ALIGNED_NAME(name))->Arg(8)->Arg(12)->Arg(16)->Arg(32)->Arg(64)->Arg(512)->Arg(4<<10)->Arg(32<<10)->Arg(256<<10)->Arg(4096<<10);
+
+// Queue both misaligned and aligned for each benchmark
+#define BENCHMARK_ADLER32(name, hashfunc, support_flag) \
+ BENCHMARK_ADLER32_MISALIGNED(name, hashfunc, support_flag); \
+ BENCHMARK_ADLER32_ALIGNED(name, hashfunc, support_flag);
+
+BENCHMARK_ADLER32(c, adler32_c, 1);
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+BENCHMARK_ADLER32(native, native_adler32, 1);
+#else
+
+#ifdef ARM_NEON
+BENCHMARK_ADLER32(neon, adler32_neon, test_cpu_features.arm.has_neon);
+#endif
+
+#ifdef PPC_VMX
+BENCHMARK_ADLER32(vmx, adler32_vmx, test_cpu_features.power.has_altivec);
+#endif
+#ifdef POWER8_VSX
+BENCHMARK_ADLER32(power8, adler32_power8, test_cpu_features.power.has_arch_2_07);
+#endif
+
+#ifdef RISCV_RVV
+BENCHMARK_ADLER32(rvv, adler32_rvv, test_cpu_features.riscv.has_rvv);
+#endif
+
+#ifdef X86_SSSE3
+BENCHMARK_ADLER32(ssse3, adler32_ssse3, test_cpu_features.x86.has_ssse3);
+#endif
+#ifdef X86_AVX2
+BENCHMARK_ADLER32(avx2, adler32_avx2, test_cpu_features.x86.has_avx2);
+#endif
+#ifdef X86_AVX512
+BENCHMARK_ADLER32(avx512, adler32_avx512, test_cpu_features.x86.has_avx512_common);
+#endif
+#ifdef X86_AVX512VNNI
+BENCHMARK_ADLER32(avx512_vnni, adler32_avx512_vnni, test_cpu_features.x86.has_avx512vnni);
+#endif
+
+#ifdef LOONGARCH_LSX
+BENCHMARK_ADLER32(lsx, adler32_lsx, test_cpu_features.loongarch.has_lsx);
+#endif
+#ifdef LOONGARCH_LASX
+BENCHMARK_ADLER32(lasx, adler32_lasx, test_cpu_features.loongarch.has_lasx);
+#endif
+
+#endif
diff --git a/neozip/test/benchmarks/benchmark_adler32_copy.cc b/neozip/test/benchmarks/benchmark_adler32_copy.cc
new file mode 100644
index 0000000000..6d913b1d19
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_adler32_copy.cc
@@ -0,0 +1,176 @@
+/* benchmark_adler32_copy.cc -- benchmark adler32 (elided copy) variants
+ * Copyright (C) 2022 Nathan Moinvaziri, Adam Stylinski
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "arch_functions.h"
+# include "../test_cpu_features.h"
+}
+
+// Hash copy functions are used on strm->next_in buffers, we process
+// 512-32k sizes (x2 for initial fill) at a time if enough data is available.
+#define BUFSIZE (65536 + 64)
+
+class adler32_copy: public benchmark::Fixture {
+private:
+ uint32_t *testdata;
+ uint8_t *dstbuf;
+
+public:
+ void SetUp(::benchmark::State& state) {
+ testdata = (uint32_t *)zng_alloc_aligned(BUFSIZE, 64);
+ dstbuf = (uint8_t *)zng_alloc_aligned(BUFSIZE, 64);
+ if (testdata == NULL || dstbuf == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ for (uint32_t i = 0; i < BUFSIZE/sizeof(uint32_t); i++) {
+ testdata[i] = rand();
+ }
+ }
+
+ // Benchmark Adler32_copy, with rolling buffer misalignment for consistent results
+ void Bench(benchmark::State& state, adler32_copy_func adler32_copy, const int DO_ALIGNED) {
+ int misalign = 0;
+ uint32_t hash = 0;
+
+ for (auto _ : state) {
+ hash = adler32_copy(hash, dstbuf + misalign, (const unsigned char*)testdata + misalign, (size_t)state.range(0));
+ if (misalign >= 63)
+ misalign = 0;
+ else
+ misalign += (DO_ALIGNED) ? 16 : 1;
+
+ // Prevent the result from being optimized away
+ benchmark::DoNotOptimize(hash);
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ zng_free_aligned(testdata);
+ zng_free_aligned(dstbuf);
+ }
+};
+
+// Misaligned
+#define BENCHMARK_ADLER32_COPY_MISALIGNED(name, copyfunc, support_flag) \
+ BENCHMARK_DEFINE_F(adler32_copy, name)(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, copyfunc, 0); \
+ } \
+ BENCHMARK_REGISTER_F(adler32_copy, name)->Arg(32)->Arg(512)->Arg(8<<10)->Arg(32<<10)->Arg(64<<10);
+
+// Aligned
+#define ALIGNED_NAME(name) name##_aligned
+#define BENCHMARK_ADLER32_COPY_ALIGNED(name, copyfunc, support_flag) \
+ BENCHMARK_DEFINE_F(adler32_copy, ALIGNED_NAME(name))(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, copyfunc, 1); \
+ } \
+ BENCHMARK_REGISTER_F(adler32_copy, ALIGNED_NAME(name))->Arg(32)->Arg(512)->Arg(8<<10)->Arg(32<<10)->Arg(64<<10);
+
+
+// Adler32 + memcpy benchmarks for reference
+#ifdef HASH_BASELINE
+#define MEMCPY_NAME(name) name##_memcpy
+#define BENCHMARK_ADLER32_MEMCPY_MISALIGNED(name, hashfunc, support_flag) \
+ BENCHMARK_DEFINE_F(adler32_copy, MEMCPY_NAME(name))(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, [](uint32_t init_sum, unsigned char *dst, \
+ const uint8_t *buf, size_t len) -> uint32_t { \
+ memcpy(dst, buf, (size_t)len); \
+ return hashfunc(init_sum, buf, len); \
+ }, 0); \
+ } \
+ BENCHMARK_REGISTER_F(adler32_copy, MEMCPY_NAME(name))->Arg(32)->Arg(512)->Arg(8<<10)->Arg(32<<10)->Arg(64<<10);
+
+#define MEMCPY_ALIGNED_NAME(name) name##_memcpy_aligned
+#define BENCHMARK_ADLER32_MEMCPY_ALIGNED(name, hashfunc, support_flag) \
+ BENCHMARK_DEFINE_F(adler32_copy, MEMCPY_ALIGNED_NAME(name))(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, [](uint32_t init_sum, unsigned char *dst, \
+ const uint8_t *buf, size_t len) -> uint32_t { \
+ memcpy(dst, buf, (size_t)len); \
+ return hashfunc(init_sum, buf, len); \
+ }, 1); \
+ } \
+ BENCHMARK_REGISTER_F(adler32_copy, MEMCPY_ALIGNED_NAME(name))->Arg(32)->Arg(512)->Arg(8<<10)->Arg(32<<10)->Arg(64<<10);
+#endif
+
+
+// Queue both misaligned and aligned for each benchmark
+#define BENCHMARK_ADLER32_COPY_ONLY(name, copyfunc, support_flag) \
+ BENCHMARK_ADLER32_COPY_MISALIGNED(name, copyfunc, support_flag); \
+ BENCHMARK_ADLER32_COPY_ALIGNED(name, copyfunc, support_flag);
+
+// Optionally also benchmark using memcpy with normal hash function for baseline
+#ifdef HASH_BASELINE
+#define BENCHMARK_ADLER32_COPY(name, hashfunc, copyfunc, support_flag) \
+ BENCHMARK_ADLER32_COPY_MISALIGNED(name, copyfunc, support_flag); \
+ BENCHMARK_ADLER32_COPY_ALIGNED(name, copyfunc, support_flag); \
+ BENCHMARK_ADLER32_MEMCPY_MISALIGNED(name, copyfunc, support_flag); \
+ BENCHMARK_ADLER32_MEMCPY_ALIGNED(name, copyfunc, support_flag);
+#else
+#define BENCHMARK_ADLER32_COPY(name, hashfunc, copyfunc, support_flag) \
+ BENCHMARK_ADLER32_COPY_ONLY(name, copyfunc, support_flag)
+#endif
+
+BENCHMARK_ADLER32_COPY(c, adler32_c, adler32_copy_c, 1);
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+BENCHMARK_ADLER32_COPY(native, native_adler32, native_adler32_copy, 1);
+#else
+
+#ifdef ARM_NEON
+BENCHMARK_ADLER32_COPY(neon, adler32_neon, adler32_copy_neon, test_cpu_features.arm.has_neon);
+#endif
+
+#ifdef PPC_VMX
+BENCHMARK_ADLER32_COPY(vmx, adler32_vmx, adler32_copy_vmx, test_cpu_features.power.has_altivec);
+#endif
+#ifdef POWER8_VSX
+BENCHMARK_ADLER32_COPY(power8, adler32_power8, adler32_copy_power8, test_cpu_features.power.has_arch_2_07);
+#endif
+
+#ifdef RISCV_RVV
+BENCHMARK_ADLER32_COPY(rvv, adler32_rvv, adler32_copy_rvv, test_cpu_features.riscv.has_rvv);
+#endif
+
+#ifdef X86_SSSE3
+BENCHMARK_ADLER32_COPY(ssse3, adler32_ssse3, adler32_copy_ssse3, test_cpu_features.x86.has_ssse3);
+#endif
+#ifdef X86_SSE42
+// There is no adler32_sse42, so only test the copy variant
+BENCHMARK_ADLER32_COPY_ONLY(sse42, adler32_copy_sse42, test_cpu_features.x86.has_sse42);
+#endif
+#ifdef X86_AVX2
+BENCHMARK_ADLER32_COPY(avx2, adler32_avx, adler32_copy_avx2, test_cpu_features.x86.has_avx2);
+#endif
+#ifdef X86_AVX512
+BENCHMARK_ADLER32_COPY(avx512, adler32_avx512, adler32_copy_avx512, test_cpu_features.x86.has_avx512_common);
+#endif
+#ifdef X86_AVX512VNNI
+BENCHMARK_ADLER32_COPY(avx512_vnni, adler32_avx512_vnni, adler32_copy_avx512_vnni, test_cpu_features.x86.has_avx512vnni);
+#endif
+
+#ifdef LOONGARCH_LSX
+BENCHMARK_ADLER32_COPY(lsx, adler32_lsx, adler32_copy_lsx, test_cpu_features.loongarch.has_lsx);
+#endif
+#ifdef LOONGARCH_LASX
+BENCHMARK_ADLER32_COPY(lasx, adler32_lasx, adler32_copy_lasx, test_cpu_features.loongarch.has_lasx);
+#endif
+
+#endif
diff --git a/neozip/test/benchmarks/benchmark_compare256.cc b/neozip/test/benchmarks/benchmark_compare256.cc
new file mode 100644
index 0000000000..2d8352879d
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_compare256.cc
@@ -0,0 +1,106 @@
+/* benchmark_compare256.cc -- benchmark compare256 variants
+ * Copyright (C) 2022 Nathan Moinvaziri
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "arch_functions.h"
+# include "../test_cpu_features.h"
+}
+
+#define MAX_COMPARE_SIZE (256 + 64)
+
+class compare256: public benchmark::Fixture {
+private:
+ uint8_t *str1;
+ uint8_t *str2;
+
+public:
+ void SetUp(::benchmark::State& state) {
+ str1 = (uint8_t *)malloc(MAX_COMPARE_SIZE);
+ str2 = (uint8_t *)malloc(MAX_COMPARE_SIZE);
+ if (str1 == NULL || str2 == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ memset(str1, 'a', MAX_COMPARE_SIZE);
+ memset(str2, 'a', MAX_COMPARE_SIZE);
+ }
+
+ // Benchmark compare256, with rolling buffer misalignment for consistent results
+ void Bench(benchmark::State& state, compare256_func compare256) {
+ int misalign = 0;
+ int32_t match_len = (int32_t)state.range(0) - 1;
+ uint32_t len = 0;
+
+ for (auto _ : state) {
+ str2[match_len + misalign] = 0; // Set new match limit
+
+ len = compare256((const uint8_t *)str1 + misalign, (const uint8_t *)str2 + misalign);
+
+ str2[match_len + misalign] = 'a'; // Reset match limit
+
+ if (misalign >= 63)
+ misalign = 0;
+ else
+ misalign++;
+
+ // Prevent the result from being optimized away
+ benchmark::DoNotOptimize(len);
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ free(str1);
+ free(str2);
+ }
+};
+
+#define BENCHMARK_COMPARE256(name, comparefunc, support_flag) \
+ BENCHMARK_DEFINE_F(compare256, name)(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, comparefunc); \
+ } \
+ BENCHMARK_REGISTER_F(compare256, name)->Arg(1)->Arg(10)->Arg(40)->Arg(80)->Arg(100)->Arg(175)->Arg(256);
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+BENCHMARK_COMPARE256(native, native_compare256, 1);
+#else
+
+#ifdef WITH_ALL_FALLBACKS
+BENCHMARK_COMPARE256(8, compare256_8, 1);
+BENCHMARK_COMPARE256(64, compare256_64, 1);
+#endif
+
+#ifdef X86_SSE2
+BENCHMARK_COMPARE256(sse2, compare256_sse2, test_cpu_features.x86.has_sse2);
+#endif
+#ifdef X86_AVX2
+BENCHMARK_COMPARE256(avx2, compare256_avx2, test_cpu_features.x86.has_avx2);
+#endif
+#ifdef X86_AVX512
+BENCHMARK_COMPARE256(avx512, compare256_avx512, test_cpu_features.x86.has_avx512_common);
+#endif
+#ifdef ARM_NEON
+BENCHMARK_COMPARE256(neon, compare256_neon, test_cpu_features.arm.has_neon);
+#endif
+#ifdef POWER9
+BENCHMARK_COMPARE256(power9, compare256_power9, test_cpu_features.power.has_arch_3_00);
+#endif
+#ifdef RISCV_RVV
+BENCHMARK_COMPARE256(rvv, compare256_rvv, test_cpu_features.riscv.has_rvv);
+#endif
+#ifdef LOONGARCH_LSX
+BENCHMARK_COMPARE256(lsx, compare256_lsx, test_cpu_features.loongarch.has_lsx);
+#endif
+#ifdef LOONGARCH_LASX
+BENCHMARK_COMPARE256(lasx, compare256_lasx, test_cpu_features.loongarch.has_lasx);
+#endif
+
+#endif
diff --git a/neozip/test/benchmarks/benchmark_compare256_rle.cc b/neozip/test/benchmarks/benchmark_compare256_rle.cc
new file mode 100644
index 0000000000..db5adacc19
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_compare256_rle.cc
@@ -0,0 +1,72 @@
+/* benchmark_compare256_rle.cc -- benchmark compare256_rle variants
+ * Copyright (C) 2022 Nathan Moinvaziri
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "compare256_rle.h"
+}
+
+#define MAX_COMPARE_SIZE (256 + 64)
+
+class compare256_rle: public benchmark::Fixture {
+private:
+ uint8_t *str1;
+ uint8_t *str2;
+
+public:
+ void SetUp(::benchmark::State& state) {
+ str1 = (uint8_t *)malloc(MAX_COMPARE_SIZE);
+ str2 = (uint8_t *)malloc(MAX_COMPARE_SIZE);
+ if (str1 == NULL || str2 == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ memset(str1, 'a', MAX_COMPARE_SIZE);
+ memset(str2, 'a', MAX_COMPARE_SIZE);
+ }
+
+ // Benchmark compare256_rle, with rolling buffer misalignment for consistent results
+ void Bench(benchmark::State& state, compare256_rle_func compare256_rle) {
+ int misalign = 0;
+ int32_t match_len = (int32_t)state.range(0) - 1;
+ uint32_t len = 0;
+
+ for (auto _ : state) {
+ str2[match_len + misalign] = 0; // Set new match limit
+
+ len = compare256_rle((const uint8_t *)str1 + misalign, (const uint8_t *)str2 + misalign);
+
+ str2[match_len + misalign] = 'a'; // Reset match limit
+
+ if (misalign >= 63)
+ misalign = 0;
+ else
+ misalign++;
+
+ // Prevent the result from being optimized away
+ benchmark::DoNotOptimize(len);
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ free(str1);
+ free(str2);
+ }
+};
+
+#define BENCHMARK_COMPARE256_RLE(name, comparefunc, support_flag) \
+ BENCHMARK_DEFINE_F(compare256_rle, name)(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, comparefunc); \
+ } \
+ BENCHMARK_REGISTER_F(compare256_rle, name)->Arg(1)->Arg(10)->Arg(40)->Arg(80)->Arg(100)->Arg(175)->Arg(256);;
+
+BENCHMARK_COMPARE256_RLE(8, compare256_rle_8, 1);
+BENCHMARK_COMPARE256_RLE(64, compare256_rle_64, 1);
diff --git a/neozip/test/benchmarks/benchmark_compress.cc b/neozip/test/benchmarks/benchmark_compress.cc
new file mode 100644
index 0000000000..df042f7153
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_compress.cc
@@ -0,0 +1,75 @@
+/* benchmark_compress.cc -- benchmark compress()
+ * Copyright (C) 2024-2025 Hans Kristian Rosbach
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <stdio.h>
+#include <assert.h>
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "zutil_p.h"
+# if defined(ZLIB_COMPAT)
+# include "zlib.h"
+# else
+# include "zlib-ng.h"
+# endif
+# include "test/compressible_data_p.h"
+}
+
+#define MAX_SIZE (64 * 1024)
+
+class compress_bench: public benchmark::Fixture {
+private:
+ uint8_t *inbuff;
+ uint8_t *outbuff;
+
+public:
+ void SetUp(::benchmark::State& state) {
+ outbuff = (uint8_t *)malloc(MAX_SIZE + 16);
+ if (outbuff == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ // Initialize input buffer with highly compressible data, interspersed
+ // with small amounts of random data and 3-byte matches.
+ inbuff = gen_compressible_data(MAX_SIZE);
+ if (inbuff == NULL) {
+ free(outbuff);
+ outbuff = NULL;
+ state.SkipWithError("gen_compressible_data() failed");
+ return;
+ }
+ }
+
+ void Bench(benchmark::State& state) {
+ int err = 0;
+
+ for (auto _ : state) {
+ z_uintmax_t compressed_size = MAX_SIZE + 16;
+ err = PREFIX(compress)(outbuff, &compressed_size, inbuff, (size_t)state.range(0));
+ if (err != Z_OK) {
+ fprintf(stderr, "compress() failed with error %d\n", err);
+ abort();
+ }
+
+ // Prevent the result from being optimized away
+ benchmark::DoNotOptimize(err);
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ free(inbuff);
+ free(outbuff);
+ }
+};
+
+#define BENCHMARK_COMPRESS(name) \
+ BENCHMARK_DEFINE_F(compress_bench, name)(benchmark::State& state) { \
+ Bench(state); \
+ } \
+ BENCHMARK_REGISTER_F(compress_bench, name)->Arg(1)->Arg(16)->Arg(48)->Arg(256)->Arg(1<<10)->Arg(4<<10)->Arg(16<<10)->Arg(64<<10);
+
+BENCHMARK_COMPRESS(compress_bench);
diff --git a/neozip/test/benchmarks/benchmark_crc32.cc b/neozip/test/benchmarks/benchmark_crc32.cc
new file mode 100644
index 0000000000..1e2cf88590
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_crc32.cc
@@ -0,0 +1,125 @@
+/* benchmark_crc32.cc -- benchmark crc32 variants
+ * Copyright (C) 2022 Nathan Moinvaziri
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "arch_functions.h"
+# include "../test_cpu_features.h"
+}
+
+#define BUFSIZE ((4 * 1024 * 1024) + 64)
+
+class crc32: public benchmark::Fixture {
+private:
+ uint32_t *testdata;
+
+public:
+ void SetUp(::benchmark::State& state) {
+ testdata = (uint32_t *)zng_alloc_aligned(BUFSIZE, 64);
+ if (testdata == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ for (uint32_t i = 0; i < BUFSIZE/sizeof(uint32_t); i++) {
+ testdata[i] = rand();
+ }
+ }
+
+ // Benchmark CRC32, with rolling buffer misalignment for consistent results
+ void Bench(benchmark::State& state, crc32_func crc32, const int DO_ALIGNED) {
+ int misalign = 0;
+ uint32_t hash = 0;
+
+ for (auto _ : state) {
+ hash = crc32(hash, (const unsigned char *)testdata + misalign, (size_t)state.range(0));
+ if (misalign >= 63)
+ misalign = 0;
+ else
+ misalign += (DO_ALIGNED) ? 16 : 1;
+
+ // Prevent the result from being optimized away
+ benchmark::DoNotOptimize(hash);
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ zng_free_aligned(testdata);
+ }
+};
+
+#define BENCHMARK_CRC32_MISALIGNED(name, hashfunc, support_flag) \
+ BENCHMARK_DEFINE_F(crc32, name)(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, hashfunc, 0); \
+ } \
+ BENCHMARK_REGISTER_F(crc32, name)->Arg(1)->Arg(8)->Arg(12)->Arg(16)->Arg(32)->Arg(64)->Arg(512)->Arg(4<<10)->Arg(32<<10)->Arg(256<<10)->Arg(4096<<10);
+
+// Aligned
+#define ALIGNED_NAME(name) name##_aligned
+#define BENCHMARK_CRC32_ALIGNED(name, hashfunc, support_flag) \
+ BENCHMARK_DEFINE_F(crc32, ALIGNED_NAME(name))(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, hashfunc, 1); \
+ } \
+ BENCHMARK_REGISTER_F(crc32, ALIGNED_NAME(name))->Arg(8)->Arg(12)->Arg(16)->Arg(32)->Arg(64)->Arg(512)->Arg(4<<10)->Arg(32<<10)->Arg(256<<10)->Arg(4096<<10);
+
+// Queue both misaligned and aligned for each benchmark
+#define BENCHMARK_CRC32(name, hashfunc, support_flag) \
+ BENCHMARK_CRC32_MISALIGNED(name, hashfunc, support_flag); \
+ BENCHMARK_CRC32_ALIGNED(name, hashfunc, support_flag);
+
+BENCHMARK_CRC32(braid, crc32_braid, 1);
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+BENCHMARK_CRC32(native, native_crc32, 1);
+#else
+
+#ifndef WITHOUT_CHORBA
+BENCHMARK_CRC32(chorba_c, crc32_chorba, 1);
+#endif
+#ifndef WITHOUT_CHORBA_SSE
+# ifdef X86_SSE2
+ BENCHMARK_CRC32(chorba_sse2, crc32_chorba_sse2, test_cpu_features.x86.has_sse2);
+# endif
+# ifdef X86_SSE41
+ BENCHMARK_CRC32(chorba_sse41, crc32_chorba_sse41, test_cpu_features.x86.has_sse41);
+# endif
+#endif
+#ifdef ARM_CRC32
+BENCHMARK_CRC32(armv8, crc32_armv8, test_cpu_features.arm.has_crc32);
+#endif
+#ifdef ARM_PMULL_EOR3
+BENCHMARK_CRC32(armv8_pmull_eor3, crc32_armv8_pmull_eor3, test_cpu_features.arm.has_crc32 && test_cpu_features.arm.has_pmull && test_cpu_features.arm.has_eor3);
+#endif
+#ifdef RISCV_CRC32_ZBC
+BENCHMARK_CRC32(riscv, crc32_riscv64_zbc, test_cpu_features.riscv.has_zbc);
+#endif
+#ifdef POWER8_VSX_CRC32
+BENCHMARK_CRC32(power8, crc32_power8, test_cpu_features.power.has_arch_2_07);
+#endif
+#ifdef S390_CRC32_VX
+BENCHMARK_CRC32(vx, crc32_s390_vx, test_cpu_features.s390.has_vx);
+#endif
+#ifdef X86_PCLMULQDQ_CRC
+BENCHMARK_CRC32(pclmulqdq, crc32_pclmulqdq, test_cpu_features.x86.has_pclmulqdq);
+#endif
+#ifdef X86_VPCLMULQDQ_AVX2
+BENCHMARK_CRC32(vpclmulqdq_avx2, crc32_vpclmulqdq_avx2, (test_cpu_features.x86.has_pclmulqdq && test_cpu_features.x86.has_avx2 && test_cpu_features.x86.has_vpclmulqdq));
+#endif
+#ifdef X86_VPCLMULQDQ_AVX512
+BENCHMARK_CRC32(vpclmulqdq_avx512, crc32_vpclmulqdq_avx512, (test_cpu_features.x86.has_pclmulqdq && test_cpu_features.x86.has_avx512_common && test_cpu_features.x86.has_vpclmulqdq));
+#endif
+#ifdef LOONGARCH_CRC
+BENCHMARK_CRC32(loongarch64, crc32_loongarch64, test_cpu_features.loongarch.has_crc);
+#endif
+
+#endif
diff --git a/neozip/test/benchmarks/benchmark_crc32_copy.cc b/neozip/test/benchmarks/benchmark_crc32_copy.cc
new file mode 100644
index 0000000000..eafa5aee44
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_crc32_copy.cc
@@ -0,0 +1,177 @@
+/* benchmark_crc32_copy.cc -- benchmark for crc32 implementations with copying
+ * Copyright (C) 2025 Hans Kristian Rosbach
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "arch_functions.h"
+# include "../test_cpu_features.h"
+}
+
+// Hash copy functions are used on strm->next_in buffers, we process
+// 512-32k sizes (x2 for initial fill) at a time if enough data is available.
+#define BUFSIZE (65536 + 64)
+
+class crc32_copy: public benchmark::Fixture {
+protected:
+ uint32_t *testdata;
+ uint8_t *dstbuf;
+
+public:
+ void SetUp(::benchmark::State& state) {
+ testdata = (uint32_t *)zng_alloc_aligned(BUFSIZE, 64);
+ dstbuf = (uint8_t *)zng_alloc_aligned(BUFSIZE, 64);
+ if (testdata == NULL || dstbuf == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ for (uint32_t i = 0; i < BUFSIZE/sizeof(uint32_t); i++) {
+ testdata[i] = rand();
+ }
+ }
+
+ // Benchmark CRC32_copy, with rolling buffer misalignment for consistent results
+ void Bench(benchmark::State& state, crc32_copy_func crc32_copy, const int DO_ALIGNED) {
+ int misalign = 0;
+ uint32_t hash = 0;
+
+ for (auto _ : state) {
+ hash = crc32_copy(hash, dstbuf + misalign, (const unsigned char*)testdata + misalign, (size_t)state.range(0));
+ if (misalign >= 63)
+ misalign = 0;
+ else
+ misalign += (DO_ALIGNED) ? 16 : 1;
+
+ // Prevent the result from being optimized away
+ benchmark::DoNotOptimize(hash);
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ zng_free_aligned(testdata);
+ zng_free_aligned(dstbuf);
+ }
+};
+
+// Misaligned
+#define BENCHMARK_CRC32_COPY_MISALIGNED(name, copyfunc, support_flag) \
+ BENCHMARK_DEFINE_F(crc32_copy, name)(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, copyfunc, 0); \
+ } \
+ BENCHMARK_REGISTER_F(crc32_copy, name)->Arg(32)->Arg(512)->Arg(8<<10)->Arg(32<<10)->Arg(64<<10);
+
+// Aligned
+#define ALIGNED_NAME(name) name##_aligned
+#define BENCHMARK_CRC32_COPY_ALIGNED(name, copyfunc, support_flag) \
+ BENCHMARK_DEFINE_F(crc32_copy, ALIGNED_NAME(name))(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, copyfunc, 1); \
+ } \
+ BENCHMARK_REGISTER_F(crc32_copy, ALIGNED_NAME(name))->Arg(32)->Arg(512)->Arg(8<<10)->Arg(32<<10)->Arg(64<<10);
+
+// CRC32 + memcpy benchmarks for reference
+#ifdef HASH_BASELINE
+#define MEMCPY_NAME(name) name##_memcpy
+#define BENCHMARK_CRC32_MEMCPY_MISALIGNED(name, hashfunc, support_flag) \
+ BENCHMARK_DEFINE_F(crc32_copy, MEMCPY_NAME(name))(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, [](uint32_t init_sum, unsigned char *dst, \
+ const uint8_t *buf, size_t len) -> uint32_t { \
+ memcpy(dst, buf, (size_t)len); \
+ return hashfunc(init_sum, buf, len); \
+ }, 0); \
+ } \
+ BENCHMARK_REGISTER_F(crc32_copy, MEMCPY_NAME(name))->Arg(32)->Arg(512)->Arg(8<<10)->Arg(32<<10)->Arg(64<<10);
+
+#define MEMCPY_ALIGNED_NAME(name) name##_memcpy_aligned
+#define BENCHMARK_CRC32_MEMCPY_ALIGNED(name, hashfunc, support_flag) \
+ BENCHMARK_DEFINE_F(crc32_copy, MEMCPY_ALIGNED_NAME(name))(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, [](uint32_t init_sum, unsigned char *dst, \
+ const uint8_t *buf, size_t len) -> uint32_t { \
+ memcpy(dst, buf, (size_t)len); \
+ return hashfunc(init_sum, buf, len); \
+ }, 1); \
+ } \
+ BENCHMARK_REGISTER_F(crc32_copy, MEMCPY_ALIGNED_NAME(name))->Arg(32)->Arg(512)->Arg(8<<10)->Arg(32<<10)->Arg(64<<10);
+#endif
+
+
+// Queue both misaligned and aligned for each benchmark
+#define BENCHMARK_CRC32_COPY_ONLY(name, copyfunc, support_flag) \
+ BENCHMARK_CRC32_COPY_MISALIGNED(name, copyfunc, support_flag); \
+ BENCHMARK_CRC32_COPY_ALIGNED(name, copyfunc, support_flag);
+
+// Optionally also benchmark using memcpy with normal hash function for baseline
+#ifdef HASH_BASELINE
+#define BENCHMARK_CRC32_COPY(name, hashfunc, copyfunc, support_flag) \
+ BENCHMARK_CRC32_COPY_MISALIGNED(name, copyfunc, support_flag); \
+ BENCHMARK_CRC32_COPY_ALIGNED(name, copyfunc, support_flag); \
+ BENCHMARK_CRC32_MEMCPY_MISALIGNED(name, copyfunc, support_flag); \
+ BENCHMARK_CRC32_MEMCPY_ALIGNED(name, copyfunc, support_flag);
+#else
+#define BENCHMARK_CRC32_COPY(name, hashfunc, copyfunc, support_flag) \
+ BENCHMARK_CRC32_COPY_ONLY(name, copyfunc, support_flag)
+#endif
+
+// Base test
+BENCHMARK_CRC32_COPY(braid, crc32_braid, crc32_copy_braid, 1);
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+ // Native
+ BENCHMARK_CRC32_COPY(native, native_crc32, native_crc32_copy, 1)
+#else
+ // Optimized functions
+# ifndef WITHOUT_CHORBA
+ BENCHMARK_CRC32_COPY(chorba, crc32_chorba, crc32_copy_chorba, 1)
+# endif
+# ifndef WITHOUT_CHORBA_SSE
+# ifdef X86_SSE2
+ BENCHMARK_CRC32_COPY(chorba_sse2, crc32_chorba_sse2, crc32_copy_chorba_sse2, test_cpu_features.x86.has_sse2);
+# endif
+# ifdef X86_SSE41
+ BENCHMARK_CRC32_COPY(chorba_sse41, crc32_chorba_sse41, crc32_copy_chorba_sse41, test_cpu_features.x86.has_sse41);
+# endif
+# endif
+# ifdef ARM_CRC32
+ BENCHMARK_CRC32_COPY(armv8, crc32_armv8, crc32_copy_armv8, test_cpu_features.arm.has_crc32)
+# endif
+# ifdef ARM_PMULL_EOR3
+ BENCHMARK_CRC32_COPY(armv8_pmull_eor3, crc32_armv8_pmull_eor3, crc32_copy_armv8_pmull_eor3, test_cpu_features.arm.has_crc32 && test_cpu_features.arm.has_pmull && test_cpu_features.arm.has_eor3)
+# endif
+# ifdef LOONGARCH_CRC
+ BENCHMARK_CRC32_COPY(loongarch, crc32_loongarch64, crc32_copy_loongarch64, test_cpu_features.loongarch.has_crc)
+# endif
+# ifdef POWER8_VSX_CRC32
+ BENCHMARK_CRC32_COPY(power8, crc32_power8, crc32_copy_power8, test_cpu_features.power.has_arch_2_07)
+# endif
+# ifdef RISCV_CRC32_ZBC
+ BENCHMARK_CRC32_COPY(riscv, crc32_riscv, crc32_copy_riscv64_zbc, test_cpu_features.riscv.has_zbc)
+# endif
+# ifdef S390_CRC32_VX
+ BENCHMARK_CRC32_COPY(vx, crc32_s390_vx, crc32_copy_s390_vx, test_cpu_features.s390.has_vx)
+# endif
+# ifdef X86_PCLMULQDQ_CRC
+ BENCHMARK_CRC32_COPY(pclmulqdq, crc32_pclmulqdq, crc32_copy_pclmulqdq, test_cpu_features.x86.has_pclmulqdq)
+# endif
+# ifdef X86_VPCLMULQDQ_AVX2
+ BENCHMARK_CRC32_COPY(vpclmulqdq_avx2, crc32_vpclmulqdq_avx2, crc32_copy_vpclmulqdq_avx2, (test_cpu_features.x86.has_pclmulqdq && test_cpu_features.x86.has_avx2 && test_cpu_features.x86.has_vpclmulqdq))
+# endif
+# ifdef X86_VPCLMULQDQ_AVX512
+ BENCHMARK_CRC32_COPY(vpclmulqdq_avx512, crc32_vpclmulqdq_avx512, crc32_copy_vpclmulqdq_avx512, (test_cpu_features.x86.has_pclmulqdq && test_cpu_features.x86.has_avx512_common && test_cpu_features.x86.has_vpclmulqdq))
+# endif
+
+#endif
diff --git a/neozip/test/benchmarks/benchmark_deflate.cc b/neozip/test/benchmarks/benchmark_deflate.cc
new file mode 100644
index 0000000000..f60e2589d1
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_deflate.cc
@@ -0,0 +1,147 @@
+/* benchmark_deflate.cc -- benchmark deflate() with various levels and raw mode
+ * Copyright (C) 2026 Nathan Moinvaziri
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <stdio.h>
+#include <assert.h>
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "zutil_p.h"
+# if defined(ZLIB_COMPAT)
+# include "zlib.h"
+# else
+# include "zlib-ng.h"
+# endif
+# include "test/compressible_data_p.h"
+}
+
+#define MAX_SIZE (1024 * 1024)
+
+/* Parameterized deflate benchmark: Args(size, level) */
+class deflate_bench: public benchmark::Fixture {
+private:
+ uint8_t *inbuff = nullptr;
+ uint8_t *outbuff = nullptr;
+ z_uintmax_t outbuff_size = 0;
+
+public:
+ void SetUp(::benchmark::State& state) {
+ outbuff_size = PREFIX(deflateBound)(NULL, MAX_SIZE);
+ outbuff = (uint8_t *)malloc(outbuff_size);
+ if (outbuff == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ inbuff = gen_compressible_data(MAX_SIZE);
+ if (inbuff == NULL) {
+ free(outbuff);
+ outbuff = NULL;
+ state.SkipWithError("gen_compressible_data() failed");
+ return;
+ }
+ }
+
+ void Bench(benchmark::State& state, int window_bits, int strategy = Z_DEFAULT_STRATEGY) {
+ int err;
+ size_t size = (size_t)state.range(0);
+ int level = (int)state.range(1);
+
+ PREFIX3(stream) strm;
+ strm.zalloc = NULL;
+ strm.zfree = NULL;
+ strm.opaque = NULL;
+ strm.total_in = 0;
+ strm.total_out = 0;
+ strm.next_out = NULL;
+ strm.avail_out = 0;
+
+ err = PREFIX(deflateInit2)(&strm, level, Z_DEFLATED, window_bits, MAX_MEM_LEVEL, strategy);
+ if (err != Z_OK) {
+ state.SkipWithError("deflateInit2 did not return Z_OK");
+ return;
+ }
+
+ for (auto _ : state) {
+ err = PREFIX(deflateReset)(&strm);
+ if (err != Z_OK) {
+ state.SkipWithError("deflateReset did not return Z_OK");
+ PREFIX(deflateEnd)(&strm);
+ return;
+ }
+
+ strm.avail_in = (uint32_t)size;
+ strm.next_in = (z_const uint8_t *)inbuff;
+ strm.next_out = outbuff;
+ strm.avail_out = (uint32_t)outbuff_size;
+
+ err = PREFIX(deflate)(&strm, Z_FINISH);
+ if (err != Z_STREAM_END) {
+ state.SkipWithError("deflate did not return Z_STREAM_END");
+ PREFIX(deflateEnd)(&strm);
+ return;
+ }
+ }
+
+ err = PREFIX(deflateEnd)(&strm);
+ if (err != Z_OK) {
+ state.SkipWithError("deflateEnd did not return Z_OK");
+ return;
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ free(inbuff);
+ free(outbuff);
+ }
+};
+
+#define BENCHMARK_DEFLATE_ARGS \
+ ->Args({1024, 1})->Args({1024, 3})->Args({1024, 6})->Args({1024, 9}) \
+ ->Args({16384, 1})->Args({16384, 3})->Args({16384, 6})->Args({16384, 9}) \
+ ->Args({131072, 1})->Args({131072, 3})->Args({131072, 6})->Args({131072, 9}) \
+ ->Args({1048576, 1})->Args({1048576, 3})->Args({1048576, 6})->Args({1048576, 9})
+
+/* Parameterized deflate with zlib wrapping (includes adler32 checksum) */
+BENCHMARK_DEFINE_F(deflate_bench, deflate_level)(benchmark::State& state) {
+ Bench(state, MAX_WBITS);
+}
+BENCHMARK_REGISTER_F(deflate_bench, deflate_level) BENCHMARK_DEFLATE_ARGS;
+
+/* Parameterized raw deflate without checksum */
+BENCHMARK_DEFINE_F(deflate_bench, deflate_nocrc)(benchmark::State& state) {
+ Bench(state, -MAX_WBITS);
+}
+BENCHMARK_REGISTER_F(deflate_bench, deflate_nocrc) BENCHMARK_DEFLATE_ARGS;
+
+/* Strategy benchmarks use fewer size/level combos to keep test count reasonable */
+#define BENCHMARK_DEFLATE_STRATEGY_ARGS \
+ ->Args({1024, 1})->Args({1024, 6})->Args({1024, 9}) \
+ ->Args({1048576, 1})->Args({1048576, 6})->Args({1048576, 9})
+
+/* Parameterized deflate with filtered strategy */
+BENCHMARK_DEFINE_F(deflate_bench, deflate_filtered)(benchmark::State& state) {
+ Bench(state, MAX_WBITS, Z_FILTERED);
+}
+BENCHMARK_REGISTER_F(deflate_bench, deflate_filtered) BENCHMARK_DEFLATE_STRATEGY_ARGS;
+
+/* Parameterized deflate with Huffman-only strategy */
+BENCHMARK_DEFINE_F(deflate_bench, deflate_huffman)(benchmark::State& state) {
+ Bench(state, MAX_WBITS, Z_HUFFMAN_ONLY);
+}
+BENCHMARK_REGISTER_F(deflate_bench, deflate_huffman) BENCHMARK_DEFLATE_STRATEGY_ARGS;
+
+/* Parameterized deflate with RLE strategy */
+BENCHMARK_DEFINE_F(deflate_bench, deflate_rle)(benchmark::State& state) {
+ Bench(state, MAX_WBITS, Z_RLE);
+}
+BENCHMARK_REGISTER_F(deflate_bench, deflate_rle) BENCHMARK_DEFLATE_STRATEGY_ARGS;
+
+/* Parameterized deflate with fixed Huffman codes */
+BENCHMARK_DEFINE_F(deflate_bench, deflate_fixed)(benchmark::State& state) {
+ Bench(state, MAX_WBITS, Z_FIXED);
+}
+BENCHMARK_REGISTER_F(deflate_bench, deflate_fixed) BENCHMARK_DEFLATE_STRATEGY_ARGS;
diff --git a/neozip/test/benchmarks/benchmark_inflate.cc b/neozip/test/benchmarks/benchmark_inflate.cc
new file mode 100644
index 0000000000..ac6ef7229f
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_inflate.cc
@@ -0,0 +1,169 @@
+/* benchmark_inflate.cc -- benchmark inflate() without crc32/adler32
+ * Copyright (C) 2024-2025 Hans Kristian Rosbach
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <stdio.h>
+#include <assert.h>
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "zutil_p.h"
+# if defined(ZLIB_COMPAT)
+# include "zlib.h"
+# else
+# include "zlib-ng.h"
+# endif
+# include "test/compressible_data_p.h"
+}
+
+#define MAX_SIZE (1024 * 1024)
+#define NUM_TESTS 6
+
+class inflate_bench: public benchmark::Fixture {
+private:
+ uint8_t *inbuff;
+ uint8_t *outbuff;
+ uint8_t *compressed_buff[NUM_TESTS];
+ z_uintmax_t compressed_sizes[NUM_TESTS];
+ uint32_t sizes[NUM_TESTS] = {1, 64, 1024, 16384, 128*1024, 1024*1024};
+
+public:
+ void SetUp(::benchmark::State& state) {
+ int err;
+ outbuff = (uint8_t *)malloc(MAX_SIZE + 16);
+ if (outbuff == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ // Initialize input buffer with highly compressible data, interspersed
+ // with small amounts of random data and 3-byte matches.
+ inbuff = gen_compressible_data(MAX_SIZE);
+ if (inbuff == NULL) {
+ free(outbuff);
+ outbuff = NULL;
+ state.SkipWithError("gen_compressible_data() failed");
+ return;
+ }
+
+ // Initialize Deflate state
+ PREFIX3(stream) strm;
+ strm.zalloc = NULL;
+ strm.zfree = NULL;
+ strm.opaque = NULL;
+ strm.total_in = 0;
+ strm.total_out = 0;
+ strm.next_out = NULL;
+ strm.avail_out = 0;
+
+ err = PREFIX(deflateInit2)(&strm, Z_BEST_COMPRESSION, Z_DEFLATED, -15, MAX_MEM_LEVEL, Z_DEFAULT_STRATEGY);
+ if (err != Z_OK) {
+ state.SkipWithError("deflateInit2 did not return Z_OK");
+ return;
+ }
+
+
+ // Compress data into different buffers
+ for (int i = 0; i < NUM_TESTS; ++i) {
+ compressed_buff[i] = (uint8_t *)malloc(sizes[i] + 64);
+ if (compressed_buff[i] == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ strm.avail_in = sizes[i]; // Size of the input buffer
+ strm.next_in = (z_const uint8_t *)inbuff; // Pointer to the input buffer
+ strm.next_out = compressed_buff[i]; // Pointer to the output buffer
+ strm.avail_out = sizes[i] + 64; // Maximum size of the output buffer
+
+ err = PREFIX(deflate)(&strm, Z_FINISH); // Perform compression
+ if (err != Z_STREAM_END ) {
+ state.SkipWithError("deflate did not return Z_STREAM_END");
+ PREFIX(deflateEnd)(&strm);
+ return;
+ }
+
+ compressed_sizes[i] = strm.total_out; // Total compressed size
+
+ err = PREFIX(deflateReset)(&strm); // Reset Deflate state
+ if (err != Z_OK) {
+ state.SkipWithError("deflateReset did not return Z_OK");
+ return;
+ }
+ }
+
+ err = PREFIX(deflateEnd)(&strm); // Clean up the deflate stream
+ if (err != Z_OK) {
+ state.SkipWithError("deflateEnd did not return Z_OK");
+ return;
+ }
+ }
+
+ void Bench(benchmark::State& state) {
+ int err;
+ int index = 0;
+ while (sizes[index] != (uint32_t)state.range(0)) ++index;
+
+ // Initialize the inflate stream
+ PREFIX3(stream) strm;
+ strm.zalloc = NULL;
+ strm.zfree = NULL;
+ strm.opaque = NULL;
+ strm.next_in = NULL;
+ strm.avail_in = 0;
+
+ err = PREFIX(inflateInit2)(&strm, -15); // Initialize the inflate state, no crc/adler
+ if (err != Z_OK) {
+ state.SkipWithError("inflateInit did not return Z_OK");
+ return;
+ }
+
+ for (auto _ : state) {
+ // Perform reset, avoids benchmarking inflateInit and inflateEnd
+ err = PREFIX(inflateReset)(&strm);
+ if (err != Z_OK) {
+ state.SkipWithError("inflateReset did not return Z_OK");
+ return;
+ }
+
+ strm.avail_in = (uint32_t)compressed_sizes[index]; // Size of the input
+ strm.next_in = compressed_buff[index]; // Pointer to the compressed data
+ strm.avail_out = MAX_SIZE; // Max size for output
+ strm.next_out = outbuff; // Output buffer
+
+ // Perform decompression
+ err = PREFIX(inflate)(&strm, Z_FINISH);
+ if (err != Z_STREAM_END) {
+ state.SkipWithError("inflate did not return Z_STREAM_END");
+ PREFIX(inflateEnd)(&strm);
+ return;
+ }
+ }
+
+ // Finalize the inflation process
+ err = PREFIX(inflateEnd)(&strm);
+ if (err != Z_OK) {
+ state.SkipWithError("inflateEnd did not return Z_OK");
+ return;
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ free(inbuff);
+ free(outbuff);
+
+ for (int i = 0; i < NUM_TESTS; ++i) {
+ free(compressed_buff[i]);
+ }
+ }
+};
+
+#define BENCHMARK_INFLATE(name) \
+ BENCHMARK_DEFINE_F(inflate_bench, name)(benchmark::State& state) { \
+ Bench(state); \
+ } \
+ BENCHMARK_REGISTER_F(inflate_bench, name)->Arg(1)->Arg(64)->Arg(1024)->Arg(16<<10)->Arg(128<<10)->Arg(1024<<10);
+
+BENCHMARK_INFLATE(inflate_nocrc);
diff --git a/neozip/test/benchmarks/benchmark_insert_string.cc b/neozip/test/benchmarks/benchmark_insert_string.cc
new file mode 100644
index 0000000000..fafba3c4cd
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_insert_string.cc
@@ -0,0 +1,164 @@
+/* benchmark_insert_string.cc -- benchmark insert_string variants
+ * Copyright (C) 2025 Nathan Moinvaziri
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <limits.h>
+#include <cstring>
+
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "deflate.h"
+# include "arch_functions.h"
+# include "../test_cpu_features.h"
+# include "insert_string_p.h"
+}
+
+#define MAX_WSIZE 32768
+#define TEST_WINDOW_SIZE (MAX_WSIZE * 2)
+
+typedef uint32_t (* quick_insert_string_cb)(deflate_state *const s, uint32_t str);
+
+// Base class with common setup/teardown for both insert_string benchmarks
+class insert_string_base: public benchmark::Fixture {
+protected:
+ deflate_state *s;
+
+public:
+ void SetUp(const ::benchmark::State&) {
+ s = (deflate_state*)zng_alloc_aligned(sizeof(deflate_state), 64);
+ memset(s, 0, sizeof(deflate_state));
+
+ // Set up window parameters
+ s->w_size = MAX_WSIZE;
+ s->window_size = TEST_WINDOW_SIZE;
+
+ // Allocate window
+ s->window = (uint8_t*)zng_alloc_aligned(TEST_WINDOW_SIZE, 64);
+
+ // Allocate hash tables
+ s->head = (Pos*)zng_alloc_aligned(HASH_SIZE * sizeof(Pos), 64);
+ s->prev = (Pos*)zng_alloc_aligned(MAX_WSIZE * sizeof(Pos), 64);
+
+ // Initialize hash tables
+ memset(s->head, 0, HASH_SIZE * sizeof(Pos));
+ memset(s->prev, 0, MAX_WSIZE * sizeof(Pos));
+
+ // Initialize rolling hash state for rolling variant
+ s->ins_h = 0;
+
+ // Fill window with deterministic data patterns
+ for (size_t i = 0; i < TEST_WINDOW_SIZE; i++) {
+ // Create patterns that will exercise the hash function well
+ s->window[i] = (uint8_t)((i * 17 + (i >> 4) * 31 + (i >> 8) * 13) & 0xFF);
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ zng_free_aligned(s->window);
+ zng_free_aligned(s->head);
+ zng_free_aligned(s->prev);
+ zng_free_aligned(s);
+ }
+};
+
+class insert_string_bench: public insert_string_base {
+public:
+ void Bench(benchmark::State& state, insert_string_cb insert_func) {
+ uint32_t str_pos = (uint32_t)state.range(0); // Starting position
+ uint32_t count = (uint32_t)state.range(1); // Number of strings to insert
+
+ // Ensure we don't go beyond window bounds
+ if (str_pos + count >= TEST_WINDOW_SIZE - 4) {
+ state.SkipWithError("Parameters exceed window size");
+ return;
+ }
+
+ for (auto _ : state) {
+ state.PauseTiming();
+
+ // Reset hash tables to ensure consistent starting state
+ memset(s->head, 0, HASH_SIZE * sizeof(Pos));
+ memset(s->prev, 0, MAX_WSIZE * sizeof(Pos));
+ s->ins_h = 0;
+
+ state.ResumeTiming();
+
+ // Benchmark the insert_string function
+ insert_func(s, str_pos, count);
+ }
+ }
+};
+
+#define BENCHMARK_INSERT_STRING(name, fptr, support_flag) \
+ BENCHMARK_DEFINE_F(insert_string_bench, name)(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("Function " #name " not supported"); \
+ } \
+ Bench(state, fptr); \
+ } \
+ BENCHMARK_REGISTER_F(insert_string_bench, name) \
+ ->Args({100, 3}) /* Most common case */ \
+ ->Args({100, 4}) \
+ ->Args({100, 5}) \
+ ->Args({100, 7}) \
+ ->Args({100, 14}) /* Mid-range cluster */ \
+ ->Args({100, 32}) /* Transition point */ \
+ ->Args({100, 127}) /* Large cluster around powers of 2 */ \
+ ->Args({100, 255}) /* Near maximum observed values */ \
+ ->Unit(benchmark::kNanosecond);
+
+// Benchmark the standard integer hash variant
+BENCHMARK_INSERT_STRING(integer_hash, ::insert_string, 1);
+
+// Benchmark the rolling hash variant
+BENCHMARK_INSERT_STRING(rolling_hash, ::insert_string_roll, 1);
+
+// Additional benchmark class for quick_insert_string functions
+class quick_insert_string_bench: public insert_string_base {
+public:
+ void Bench(benchmark::State& state, quick_insert_string_cb quick_insert_func) {
+ uint32_t start_pos = (uint32_t)state.range(0); // Starting position
+ uint32_t count = (uint32_t)state.range(1); // Number of insertions
+
+ if (start_pos + count >= TEST_WINDOW_SIZE - 4) {
+ state.SkipWithError("Parameters exceed window size");
+ return;
+ }
+
+ for (auto _ : state) {
+ state.PauseTiming();
+
+ // Reset hash tables
+ memset(s->head, 0, HASH_SIZE * sizeof(Pos));
+ memset(s->prev, 0, MAX_WSIZE * sizeof(Pos));
+ s->ins_h = 0;
+
+ state.ResumeTiming();
+
+ // Benchmark quick_insert_string (single insertions)
+ for (uint32_t i = 0; i < count; i++) {
+ uint32_t result = quick_insert_func(s, start_pos + i);
+ benchmark::DoNotOptimize(result);
+ }
+ }
+ }
+};
+
+#define BENCHMARK_QUICK_INSERT_STRING(name, fptr, support_flag) \
+ BENCHMARK_DEFINE_F(quick_insert_string_bench, name)(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("Function " #name " not supported"); \
+ } \
+ Bench(state, fptr); \
+ } \
+ BENCHMARK_REGISTER_F(quick_insert_string_bench, name) \
+ ->Args({100, 1}) /* Single insertion (baseline) */ \
+ ->Args({100, 100}) /* 100 insertions (measure amortized cost) */ \
+ ->Args({16000, 100}) /* 100 insertions at mid window (different hash distribution) */ \
+ ->Unit(benchmark::kNanosecond);
+
+BENCHMARK_QUICK_INSERT_STRING(quick_integer_hash, ::quick_insert_string, 1);
+BENCHMARK_QUICK_INSERT_STRING(quick_rolling_hash, ::quick_insert_string_roll, 1);
diff --git a/neozip/test/benchmarks/benchmark_main.cc b/neozip/test/benchmarks/benchmark_main.cc
new file mode 100644
index 0000000000..f3c227bdf7
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_main.cc
@@ -0,0 +1,32 @@
+/* benchmark_main.cc -- benchmark suite main entry point
+ * Copyright (C) 2022 Nathan Moinvaziri
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <stdio.h>
+
+#include <benchmark/benchmark.h>
+
+#ifndef BUILD_ALT
+extern "C" {
+# include "zbuild.h"
+# include "../test_cpu_features.h"
+
+# ifndef DISABLE_RUNTIME_CPU_DETECTION
+ struct cpu_features test_cpu_features;
+# endif
+}
+#endif
+
+int main(int argc, char** argv) {
+#ifndef BUILD_ALT
+# ifndef DISABLE_RUNTIME_CPU_DETECTION
+ cpu_check_features(&test_cpu_features);
+# endif
+#endif
+
+ ::benchmark::Initialize(&argc, argv);
+ ::benchmark::RunSpecifiedBenchmarks();
+
+ return EXIT_SUCCESS;
+}
diff --git a/neozip/test/benchmarks/benchmark_png_decode.cc b/neozip/test/benchmarks/benchmark_png_decode.cc
new file mode 100644
index 0000000000..ce7c8f9304
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_png_decode.cc
@@ -0,0 +1,126 @@
+#include <stdio.h>
+#include <benchmark/benchmark.h>
+#include "benchmark_png_shared.h"
+#include <assert.h>
+
+class png_decode: public benchmark::Fixture {
+protected:
+ png_dat inpng[10];
+
+ /* Backing this on the heap is a more realistic benchmark */
+ uint8_t *output_img_buf = NULL;
+
+public:
+ /* Let's make the vanilla version have something extremely compressible */
+ virtual void init_img(png_bytep img_bytes, size_t width, size_t height) {
+ init_compressible(img_bytes, width*height);
+ }
+
+ void SetUp(const ::benchmark::State&) {
+ output_img_buf = (uint8_t*)malloc(IMWIDTH * IMHEIGHT * 3);
+ assert(output_img_buf != NULL);
+ init_img(output_img_buf, IMWIDTH, IMHEIGHT);
+
+ /* First we need to author the png bytes to be decoded */
+ for (int i = 0; i < 10; ++i) {
+ inpng[i] = {NULL, 0, 0};
+ encode_png(output_img_buf, &inpng[i], i, IMWIDTH, IMHEIGHT);
+ }
+ }
+
+ /* State in this circumstance will convey the compression level */
+ void Bench(benchmark::State &state) {
+ for (auto _ : state) {
+ int compress_lvl = state.range(0);
+ png_parse_dat in = { inpng[compress_lvl].buf };
+ uint32_t width, height;
+ decode_png(&in, (png_bytepp)&output_img_buf, IMWIDTH * IMHEIGHT * 3, width, height);
+ }
+ }
+
+ void TearDown(const ::benchmark::State &) {
+ free(output_img_buf);
+ for (int i = 0; i < 10; ++i) {
+ free(inpng[i].buf);
+ }
+ }
+};
+
+class png_decode_realistic: public png_decode {
+private:
+ bool test_files_found = false;
+
+public:
+ void SetUp(const ::benchmark::State &) {
+ output_img_buf = NULL;
+ output_img_buf = (uint8_t*)malloc(IMWIDTH * IMHEIGHT * 3);
+ /* Let's take all the images at different compression levels and jam their bytes into buffers */
+ char test_fname[25];
+ FILE *files[10];
+
+ /* Set all to NULL */
+ memset(files, 0, sizeof(FILE*));
+
+ for (size_t i = 0; i < 10; ++i) {
+ sprintf(test_fname, "test_pngs/%1lu.png", i);
+ FILE *in_img = fopen(test_fname, "r");
+ if (in_img == NULL) {
+ for (size_t j = 0; j < i; ++j) {
+ if (files[j])
+ fclose(files[j]);
+ }
+
+ /* For proper cleanup */
+ for (size_t j = i; j < 10; ++j) {
+ inpng[i] = { NULL, 0, 0 };
+ }
+
+ return;
+ }
+ files[i] = in_img;
+ }
+
+ test_files_found = true;
+ /* Now that we've established we have all the png files, let's read all of their bytes into buffers */
+ for (size_t i = 0; i < 10; ++i) {
+ FILE *in_file = files[i];
+ fseek(in_file, 0, SEEK_END);
+ size_t num_bytes = ftell(in_file);
+ rewind(in_file);
+
+ uint8_t *raw_file = (uint8_t*)malloc(num_bytes);
+ if (raw_file == NULL)
+ abort();
+
+ inpng[i].buf = raw_file;
+ inpng[i].len = num_bytes;
+ inpng[i].buf_rem = 0;
+
+ size_t bytes_read = fread(raw_file, 1, num_bytes, in_file);
+ if (bytes_read != num_bytes) {
+ fprintf(stderr, "couldn't read all of the bytes for file test_pngs/%lu.png", i);
+ abort();
+ }
+
+ fclose(in_file);
+ }
+ }
+
+ void Bench(benchmark::State &state) {
+ if (!test_files_found) {
+ state.SkipWithError("Test imagery in test_pngs not found");
+ }
+
+ png_decode::Bench(state);
+ }
+};
+
+BENCHMARK_DEFINE_F(png_decode, png_decode)(benchmark::State &state) {
+ Bench(state);
+}
+BENCHMARK_REGISTER_F(png_decode, png_decode)->DenseRange(0, 9, 1)->Unit(benchmark::kMicrosecond);
+
+BENCHMARK_DEFINE_F(png_decode_realistic, png_decode_realistic)(benchmark::State &state) {
+ Bench(state);
+}
+BENCHMARK_REGISTER_F(png_decode_realistic, png_decode_realistic)->DenseRange(0, 9, 1)->Unit(benchmark::kMicrosecond);
diff --git a/neozip/test/benchmarks/benchmark_png_encode.cc b/neozip/test/benchmarks/benchmark_png_encode.cc
new file mode 100644
index 0000000000..d5e25cbc9d
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_png_encode.cc
@@ -0,0 +1,54 @@
+#include <stdio.h>
+#include <assert.h>
+#include <benchmark/benchmark.h>
+#include "benchmark_png_shared.h"
+
+#define IMWIDTH 1024
+#define IMHEIGHT 1024
+
+class png_encode: public benchmark::Fixture {
+private:
+ png_dat outpng;
+
+ /* Backing this on the heap is a more realistic benchmark */
+ uint8_t *input_img_buf = NULL;
+
+public:
+ /* Let's make the vanilla version have something extremely compressible */
+ virtual void init_img(png_bytep img_bytes, size_t width, size_t height) {
+ init_compressible(img_bytes, width * height);
+ }
+
+ void SetUp(const ::benchmark::State&) {
+ input_img_buf = (uint8_t*)malloc(IMWIDTH * IMHEIGHT * 3);
+ outpng.buf = (uint8_t*)malloc(IMWIDTH * IMHEIGHT * 3);
+ /* Using malloc rather than zng_alloc so that we can call realloc.
+ * IMWIDTH * IMHEIGHT is likely to be more than enough bytes, though,
+ * given that a simple run length encoding already pretty much can
+ * reduce to this */
+ outpng.len = 0;
+ outpng.buf_rem = IMWIDTH * IMHEIGHT * 3;
+ assert(input_img_buf != NULL);
+ assert(outpng.buf != NULL);
+ init_img(input_img_buf, IMWIDTH, IMHEIGHT);
+ }
+
+ /* State in this circumstance will convey the compression level */
+ void Bench(benchmark::State &state) {
+ for (auto _ : state) {
+ encode_png((png_bytep)input_img_buf, &outpng, state.range(0), IMWIDTH, IMHEIGHT);
+ outpng.buf_rem = outpng.len;
+ outpng.len = 0;
+ }
+ }
+
+ void TearDown(const ::benchmark::State &) {
+ free(input_img_buf);
+ free(outpng.buf);
+ }
+};
+
+BENCHMARK_DEFINE_F(png_encode, encode_compressible)(benchmark::State &state) {
+ Bench(state);
+}
+BENCHMARK_REGISTER_F(png_encode, encode_compressible)->DenseRange(0, 9, 1)->Unit(benchmark::kMicrosecond);
diff --git a/neozip/test/benchmarks/benchmark_png_shared.h b/neozip/test/benchmarks/benchmark_png_shared.h
new file mode 100644
index 0000000000..bde679e7d3
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_png_shared.h
@@ -0,0 +1,146 @@
+#pragma once
+
+#include <stdlib.h>
+#include <stdint.h>
+#include <string.h>
+
+#define IMWIDTH 1024
+#define IMHEIGHT 1024
+
+extern "C" {
+# include <png.h>
+}
+
+typedef struct _png_dat {
+ uint8_t *buf;
+ int64_t len;
+ size_t buf_rem;
+} png_dat;
+
+typedef struct _png_parse_dat {
+ uint8_t *cur_pos;
+} png_parse_dat;
+
+/* Write a customized write callback so that we write back to an in-memory buffer.
+ * This allows the testing to not involve disk IO */
+static void png_write_cb(png_structp pngp, png_bytep data, png_size_t len) {
+ png_dat *dat = (png_dat*)png_get_io_ptr(pngp);
+ size_t curSize = dat->len + len;
+
+ /* realloc double the requested buffer size to prevent excessive reallocs */
+ if (dat->buf_rem < len) {
+ dat->buf = (uint8_t*)realloc(dat->buf, dat->len + dat->buf_rem + 2 * len);
+
+ if (!dat->buf) {
+ /* Pretty unlikely but we'll put it here just in case */
+ fprintf(stderr, "realloc failed, exiting\n");
+ exit(1);
+ }
+
+ dat->buf_rem += 2 * len;
+ }
+
+ memcpy(dat->buf + dat->len, data, len);
+ dat->len = curSize;
+ dat->buf_rem -= len;
+}
+
+static void init_compressible(png_bytep buf, size_t num_pix) {
+ /* It doesn't actually matter what we make this, but for
+ * the sake of a reasonable test image, let's make this
+ * be a stripe of R, G, & B, with no alpha channel */
+ int32_t i = 0;
+ int32_t red_stop = num_pix / 3;
+ int32_t blue_stop = 2 * num_pix / 3;
+ int32_t green_stop = num_pix;
+
+ for (int32_t x = 0; i < red_stop; x += 3, ++i) {
+ buf[x] = 255;
+ buf[x + 1] = 0;
+ buf[x + 2] = 0;
+ }
+
+ for (int32_t x = 3 * i; i < blue_stop; x+= 3, ++i) {
+ buf[x] = 0;
+ buf[x + 1] = 255;
+ buf[x + 2] = 0;
+ }
+
+ for (int32_t x = 3 * i; i < green_stop; x += 3, ++i) {
+ buf[x] = 0;
+ buf[x + 1] = 0;
+ buf[x + 2] = 255;
+ }
+}
+
+static inline void encode_png(png_bytep buf, png_dat *outpng, int32_t comp_level, uint32_t width, uint32_t height) {
+ png_structp png = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);
+
+ /* Most of this error handling is _likely_ not necessary. Likewise it's likely
+ * a lot of this stuff can be done in the setup function to avoid measuring this
+ * fixed setup time, but for now we'll do it here */
+ if (!png) abort();
+
+ png_infop info = png_create_info_struct(png);
+ if (!info) abort();
+
+ png_set_write_fn(png, outpng, png_write_cb, NULL);
+ png_bytep *png_row_ptrs = new png_bytep[height];
+ for (int i = 0; i < IMHEIGHT; ++i) {
+ png_row_ptrs[i] = (png_bytep)&buf[3*i*width];
+ }
+
+ png_set_IHDR(png, info, IMWIDTH, IMHEIGHT, 8, PNG_COLOR_TYPE_RGB,
+ PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT,
+ PNG_FILTER_TYPE_DEFAULT);
+
+ png_write_info(png, info);
+ png_set_compression_level(png, comp_level);
+ png_set_filter(png, 0, PNG_FILTER_NONE);
+ png_write_image(png, (png_bytepp)png_row_ptrs);
+ png_write_end(png, NULL);
+ png_destroy_write_struct(&png, &info);
+ delete[] png_row_ptrs;
+}
+
+static void read_from_pngdat(png_structp png, png_bytep out, png_size_t bytes_to_read) {
+ png_parse_dat *io = (png_parse_dat*)png_get_io_ptr(png);
+ memcpy(out, io->cur_pos, bytes_to_read);
+ io->cur_pos += bytes_to_read;
+}
+
+static inline int decode_png(png_parse_dat *dat, png_bytepp out_bytes, size_t in_size, uint32_t &width, uint32_t &height) {
+ png_structp png = NULL;
+ png = png_create_read_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);
+
+ if (!png) abort();
+ png_infop info = NULL;
+ info = png_create_info_struct(png);
+ if (!info) abort();
+
+ png_set_read_fn(png, dat, read_from_pngdat);
+ png_read_info(png, info);
+
+ int bit_depth = 0, color_type = -1;
+ png_get_IHDR(png, info, &width, &height, &bit_depth, &color_type, NULL, NULL, NULL);
+
+ size_t im_size = width * height * bit_depth/8 * 3;
+ if (color_type != PNG_COLOR_TYPE_RGB) {
+ fprintf(stderr, "expected an 8 bpp RGB image\n");
+ abort();
+ }
+
+ if (im_size > in_size) {
+ *out_bytes = (png_bytep)realloc(*out_bytes, im_size);
+ }
+
+ png_bytep *out_rows = new png_bytep[height];
+ for (size_t i = 0; i < height; ++i)
+ out_rows[i] = *out_bytes + (width*i*3);
+
+ png_read_rows(png, out_rows, NULL, height);
+ png_destroy_read_struct(&png, &info, NULL);
+ delete[] out_rows;
+
+ return im_size;
+}
diff --git a/neozip/test/benchmarks/benchmark_slidehash.cc b/neozip/test/benchmarks/benchmark_slidehash.cc
new file mode 100644
index 0000000000..e74c06e873
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_slidehash.cc
@@ -0,0 +1,116 @@
+/* benchmark_slidehash.cc -- benchmark slide_hash variants
+ * Copyright (C) 2022 Adam Stylinski, Nathan Moinvaziri
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <limits.h>
+
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "zutil_p.h"
+# include "deflate.h"
+# include "arch_functions.h"
+# include "../test_cpu_features.h"
+}
+
+#define MAX_RANDOM_INTS 32768
+
+class slide_hash: public benchmark::Fixture {
+private:
+ uint16_t *l0;
+ uint16_t *l1;
+ deflate_state *s_g;
+
+public:
+ /**
+ * @brief Prepare the benchmark fixture by allocating and initializing working data.
+ *
+ * Allocates two 64-byte-aligned arrays of `uint16_t` (one of size HASH_SIZE, one of size MAX_RANDOM_INTS),
+ * fills them with pseudorandom `uint16_t` values, allocates a `deflate_state` structure, and sets
+ * its `head` and `prev` pointers to the allocated arrays.
+ *
+ * @param state Benchmark-provided state object from Google Benchmark (supplied by the framework).
+ */
+ void SetUp(const ::benchmark::State&) {
+ l0 = (uint16_t *)zng_alloc_aligned(HASH_SIZE * sizeof(uint16_t), 64);
+
+ for (uint32_t i = 0; i < HASH_SIZE; i++) {
+ l0[i] = (uint16_t)rand();
+ }
+
+ l1 = (uint16_t *)zng_alloc_aligned(MAX_RANDOM_INTS * sizeof(uint16_t), 64);
+
+ for (int32_t i = 0; i < MAX_RANDOM_INTS; i++) {
+ l1[i] = (uint16_t)rand();
+ }
+
+ deflate_state *s = (deflate_state*)malloc(sizeof(deflate_state));
+ s->head = l0;
+ s->prev = l1;
+ s_g = s;
+ }
+
+ void Bench(benchmark::State& state, slide_hash_func slide_hash) {
+ s_g->w_size = (uint32_t)state.range(0);
+
+ for (auto _ : state) {
+ slide_hash(s_g);
+ benchmark::DoNotOptimize(s_g);
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ zng_free_aligned(l0);
+ zng_free_aligned(l1);
+ free(s_g);
+ }
+};
+
+#define BENCHMARK_SLIDEHASH(name, fptr, support_flag) \
+ BENCHMARK_DEFINE_F(slide_hash, name)(benchmark::State& state) { \
+ if (!(support_flag)) { \
+ state.SkipWithError("CPU does not support " #name); \
+ } \
+ Bench(state, fptr); \
+ } \
+ BENCHMARK_REGISTER_F(slide_hash, name)->RangeMultiplier(2)->Range(512, MAX_RANDOM_INTS);
+
+#if defined(WITH_ALL_FALLBACKS) || !(defined(__x86_64__) || defined(_M_X64))
+BENCHMARK_SLIDEHASH(c, slide_hash_c, 1);
+#endif
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+BENCHMARK_SLIDEHASH(native, native_slide_hash, 1);
+#else
+
+#ifdef ARM_SIMD
+BENCHMARK_SLIDEHASH(armv6, slide_hash_armv6, test_cpu_features.arm.has_simd);
+#endif
+#ifdef ARM_NEON
+BENCHMARK_SLIDEHASH(neon, slide_hash_neon, test_cpu_features.arm.has_neon);
+#endif
+#ifdef POWER8_VSX
+BENCHMARK_SLIDEHASH(power8, slide_hash_power8, test_cpu_features.power.has_arch_2_07);
+#endif
+#ifdef PPC_VMX
+BENCHMARK_SLIDEHASH(vmx, slide_hash_vmx, test_cpu_features.power.has_altivec);
+#endif
+#ifdef RISCV_RVV
+BENCHMARK_SLIDEHASH(rvv, slide_hash_rvv, test_cpu_features.riscv.has_rvv);
+#endif
+#ifdef X86_SSE2
+BENCHMARK_SLIDEHASH(sse2, slide_hash_sse2, test_cpu_features.x86.has_sse2);
+#endif
+#ifdef X86_AVX2
+BENCHMARK_SLIDEHASH(avx2, slide_hash_avx2, test_cpu_features.x86.has_avx2);
+#endif
+#ifdef LOONGARCH_LSX
+BENCHMARK_SLIDEHASH(lsx, slide_hash_lsx, test_cpu_features.loongarch.has_lsx);
+#endif
+#ifdef LOONGARCH_LASX
+BENCHMARK_SLIDEHASH(lasx, slide_hash_lasx, test_cpu_features.loongarch.has_lasx);
+#endif
+
+#endif \ No newline at end of file
diff --git a/neozip/test/benchmarks/benchmark_uncompress.cc b/neozip/test/benchmarks/benchmark_uncompress.cc
new file mode 100644
index 0000000000..6a82c05d01
--- /dev/null
+++ b/neozip/test/benchmarks/benchmark_uncompress.cc
@@ -0,0 +1,97 @@
+/* benchmark_uncompress.cc -- benchmark uncompress()
+ * Copyright (C) 2024-2025 Hans Kristian Rosbach
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <stdio.h>
+#include <assert.h>
+#include <benchmark/benchmark.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "zutil_p.h"
+# if defined(ZLIB_COMPAT)
+# include "zlib.h"
+# else
+# include "zlib-ng.h"
+# endif
+# include "test/compressible_data_p.h"
+}
+
+#define MAX_SIZE (1024 * 1024)
+#define NUM_TESTS 6
+
+class uncompress_bench: public benchmark::Fixture {
+private:
+ uint8_t *inbuff;
+ uint8_t *outbuff;
+ uint8_t *compressed_buff[NUM_TESTS];
+ z_uintmax_t compressed_sizes[NUM_TESTS];
+ uint32_t sizes[NUM_TESTS] = {1, 64, 1024, 16384, 128*1024, 1024*1024};
+
+public:
+ void SetUp(::benchmark::State& state) {
+ outbuff = (uint8_t *)malloc(MAX_SIZE + 16);
+ if (outbuff == NULL) {
+ state.SkipWithError("malloc failed");
+ return;
+ }
+
+ // Initialize input buffer with highly compressible data, interspersed
+ // with small amounts of random data and 3-byte matches.
+ inbuff = gen_compressible_data(MAX_SIZE);
+ if (inbuff == NULL) {
+ free(outbuff);
+ outbuff = NULL;
+ state.SkipWithError("gen_compressible_data() failed");
+ return;
+ }
+
+ // Compress data into different buffers
+ for (int i = 0; i < NUM_TESTS; ++i) {
+ compressed_buff[i] = (uint8_t *)zng_alloc(sizes[i] + 64);
+ assert(compressed_buff[i] != NULL);
+
+ z_uintmax_t compressed_size = sizes[i] + 64;
+ int err = PREFIX(compress2)(compressed_buff[i], &compressed_size, inbuff, sizes[i], Z_BEST_COMPRESSION);
+ if (err != Z_OK) {
+ fprintf(stderr, "compress() failed with error %d\n", err);
+ abort();
+ }
+ compressed_sizes[i] = compressed_size;
+ }
+ }
+
+ void Bench(benchmark::State& state) {
+ int err;
+
+ for (auto _ : state) {
+ int index = 0;
+ while (sizes[index] != (uint32_t)state.range(0)) ++index;
+
+ z_uintmax_t out_size = MAX_SIZE;
+ err = PREFIX(uncompress)(outbuff, &out_size, compressed_buff[index], compressed_sizes[index]);
+ if (err != Z_OK) {
+ fprintf(stderr, "uncompress() failed with error %d\n", err);
+ abort();
+ }
+ }
+ }
+
+ void TearDown(const ::benchmark::State&) {
+ free(inbuff);
+ free(outbuff);
+
+ for (int i = 0; i < NUM_TESTS; ++i) {
+ zng_free(compressed_buff[i]);
+ }
+ }
+};
+
+#define BENCHMARK_UNCOMPRESS(name) \
+ BENCHMARK_DEFINE_F(uncompress_bench, name)(benchmark::State& state) { \
+ Bench(state); \
+ } \
+ BENCHMARK_REGISTER_F(uncompress_bench, name)->Arg(1)->Arg(64)->Arg(1024)->Arg(16<<10)->Arg(128<<10)->Arg(1024<<10);
+
+BENCHMARK_UNCOMPRESS(uncompress_bench);
diff --git a/neozip/test/cmake/compress-and-verify.cmake b/neozip/test/cmake/compress-and-verify.cmake
new file mode 100644
index 0000000000..2e6c37f145
--- /dev/null
+++ b/neozip/test/cmake/compress-and-verify.cmake
@@ -0,0 +1,287 @@
+# compress-and-verify.cmake -- Runs a test against an input file to make sure that the specified
+# targets are able to to compress and then decompress successfully. Optionally verify
+# the results with gzip. Output files are generated with unique names to prevent parallel
+# tests from corrupting one another. Default target arguments are compatible with minigzip.
+
+# Copyright (C) 2021 Nathan Moinvaziri
+# Licensed under the Zlib license, see LICENSE.md for details
+
+# that test a specific input file for compression or decompression.
+
+# Required Variables
+# INPUT - Input file to test
+# TARGET or - Command to run for both compress and decompress
+# COMPRESS_TARGET and - Command to run to compress input file
+# DECOMPRESS_TARGET - Command to run to decompress output file
+
+# Optional Variables
+# TEST_NAME - Name of test to use when constructing output file paths
+# COMPRESS_ARGS - Arguments to pass for compress command (default: -c -k)
+# DECOMPRESS_ARGS - Arguments to pass to decompress command (default: -d -c)
+
+# GZIP_VERIFY - Verify that gzip can decompress the COMPRESS_TARGET output and
+# verify that DECOMPRESS_TARGET can decompress gzip output of INPUT
+# COMPARE - Verify decompressed output is the same as input
+# FILEMODE - Pass data to/from (de)compressor using files instead of stdin/stdout
+# SUCCESS_EXIT - List of successful exit codes (default: 0, ie: 0;1)
+
+if(TARGET)
+ set(COMPRESS_TARGET ${TARGET})
+ set(DECOMPRESS_TARGET ${TARGET})
+endif()
+
+if(NOT DEFINED INPUT OR NOT DEFINED COMPRESS_TARGET OR NOT DEFINED DECOMPRESS_TARGET)
+ message(FATAL_ERROR "Compress test arguments missing")
+endif()
+
+# Set default values
+if(NOT DEFINED COMPARE)
+ set(COMPARE ON)
+endif()
+if(NOT DEFINED FILEMODE)
+ set(FILEMODE OFF)
+endif()
+if(NOT DEFINED COMPRESS_ARGS)
+ set(COMPRESS_ARGS -3 -k)
+ if(NOT FILEMODE)
+ list(APPEND COMPRESS_ARGS -c)
+ endif()
+endif()
+if(NOT DEFINED DECOMPRESS_ARGS)
+ set(DECOMPRESS_ARGS -d -k)
+ if(NOT FILEMODE)
+ list(APPEND DECOMPRESS_ARGS -c)
+ endif()
+endif()
+if(NOT DEFINED GZIP_VERIFY)
+ set(GZIP_VERIFY ON)
+endif()
+if(NOT DEFINED SUCCESS_EXIT)
+ set(SUCCESS_EXIT 0)
+endif()
+
+# Use test name from input file name
+if(NOT DEFINED TEST_NAME)
+ get_filename_component(TEST_NAME "${INPUT}" NAME)
+endif()
+
+# Generate unique output path so multiple tests can be executed at the same time
+string(RANDOM LENGTH 6 UNIQUE_ID)
+string(REPLACE "." "-" TEST_NAME "${TEST_NAME}")
+set(OUTPUT_BASE "${CMAKE_CURRENT_BINARY_DIR}/Testing/Temporary/${TEST_NAME}-${UNIQUE_ID}")
+
+# Ensure directory exists for output files
+get_filename_component(OUTPUT_DIR "${OUTPUT_BASE}" DIRECTORY)
+file(MAKE_DIRECTORY "${OUTPUT_DIR}")
+
+# Cleanup temporary files
+macro(cleanup_always)
+ file(GLOB TEMP_FILES ${OUTPUT_BASE}*)
+ file(REMOVE ${TEMP_FILES})
+endmacro()
+# Clean up temporary files if not on CI
+macro(cleanup)
+ if(NOT DEFINED ENV{CI})
+ cleanup_always()
+ endif()
+endmacro()
+
+# Show differences between two files
+macro(diff src1 src2)
+ find_program(XXD xxd)
+ if(XXD)
+ find_program(DIFF diff)
+ if(DIFF)
+ set(XXD_COMMAND ${XXD} ${src1} ${src1}.hex)
+ execute_process(COMMAND ${XXD_COMMAND})
+ set(XXD_COMMAND ${XXD} ${src2} ${src2}.hex)
+ execute_process(COMMAND ${XXD_COMMAND})
+
+ set(DIFF_COMMAND ${DIFF} -u ${src1}.hex ${src2}.hex)
+ execute_process(COMMAND ${DIFF_COMMAND}
+ OUTPUT_FILE ${src2}.diff)
+
+ file(READ ${src2}.diff DIFF_OUTPUT)
+ message(STATUS "Diff:\n${DIFF_OUTPUT}")
+
+ if(NOT DEFINED ENV{CI})
+ file(REMOVE ${src1}.hex ${src2}.hex ${src2}.diff)
+ endif()
+ endif()
+ endif()
+endmacro()
+
+
+macro(exec_streams tcmd tsrc tdst)
+ execute_process(COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${tcmd}"
+ -DINPUT=${tsrc}
+ -DOUTPUT=${tdst}
+ "-DSUCCESS_EXIT=${SUCCESS_EXIT}"
+ -P ${CMAKE_CURRENT_LIST_DIR}/run-and-redirect.cmake
+ RESULT_VARIABLE CMD_RESULT)
+endmacro()
+
+macro(exec_files tcmd tsrc)
+ execute_process(COMMAND
+ ${tcmd} ${tsrc}
+ RESULT_VARIABLE CMD_RESULT)
+endmacro()
+
+# Compress input file
+if(NOT EXISTS ${INPUT})
+ message(FATAL_ERROR "Cannot find compress input: ${INPUT}")
+endif()
+
+set(COMPRESS_COMMAND ${COMPRESS_TARGET} ${COMPRESS_ARGS})
+
+set(INPUT_FILE ${OUTPUT_BASE})
+
+# Make CMake copy and rename file in one operation
+# The copied file permissions is standard 644 (-rw-r--r--)
+if(NOT CMAKE_VERSION VERSION_LESS "3.19")
+ set(CONFIGURE_NO_SOURCE_PERMISSIONS NO_SOURCE_PERMISSIONS)
+endif()
+configure_file(${INPUT} ${INPUT_FILE} COPYONLY ${CONFIGURE_NO_SOURCE_PERMISSIONS})
+
+message(STATUS "Compress ${COMPRESS_COMMAND}")
+message(STATUS " Source file: ${INPUT}")
+message(STATUS " Compression input file: ${INPUT_FILE}")
+message(STATUS " Output: ${OUTPUT_BASE}.gz")
+
+if(FILEMODE)
+ exec_files("${COMPRESS_COMMAND}" "${INPUT_FILE}")
+else()
+ exec_streams("${COMPRESS_COMMAND}" "${INPUT_FILE}" "${OUTPUT_BASE}.gz")
+endif()
+
+if(CMD_RESULT)
+ cleanup()
+ message(FATAL_ERROR "Compress failed: ${CMD_RESULT}")
+endif()
+
+# Decompress output
+if(NOT EXISTS ${OUTPUT_BASE}.gz)
+ cleanup()
+ message(FATAL_ERROR "Cannot find decompress input: ${OUTPUT_BASE}.gz")
+endif()
+
+set(DECOMPRESS_COMMAND ${DECOMPRESS_TARGET} ${DECOMPRESS_ARGS})
+
+message(STATUS "Decompress ${DECOMPRESS_COMMAND}")
+message(STATUS " Input: ${OUTPUT_BASE}.gz")
+message(STATUS " Output: ${OUTPUT_BASE}")
+
+if(FILEMODE)
+ exec_files("${DECOMPRESS_COMMAND}" "${OUTPUT_BASE}.gz")
+else()
+ exec_streams("${DECOMPRESS_COMMAND}" "${OUTPUT_BASE}.gz" "${OUTPUT_BASE}")
+endif()
+
+if(CMD_RESULT)
+ cleanup()
+ message(FATAL_ERROR "Decompress failed: ${CMD_RESULT}")
+endif()
+
+if(COMPARE)
+ message(STATUS "Diff comparison")
+ message(STATUS " Input: ${INPUT}")
+ message(STATUS " Output: ${OUTPUT_BASE}")
+
+ # Compare decompressed output with original input file
+ execute_process(COMMAND ${CMAKE_COMMAND}
+ -E compare_files ${INPUT} ${OUTPUT_BASE}
+ RESULT_VARIABLE CMD_RESULT)
+
+ if(CMD_RESULT)
+ diff(${INPUT} ${OUTPUT_BASE})
+ cleanup()
+ message(FATAL_ERROR "Compare decompress failed: ${CMD_RESULT}")
+ endif()
+endif()
+
+if(GZIP_VERIFY AND NOT "${COMPRESS_ARGS}" MATCHES "-T")
+ # Transparent writing does not use gzip format
+ find_program(GZIP gzip)
+ if(GZIP)
+ if(NOT EXISTS ${OUTPUT_BASE}.gz)
+ cleanup()
+ message(FATAL_ERROR "Cannot find gzip decompress input: ${OUTPUT_BASE}.gz")
+ endif()
+
+ # Check gzip can decompress our compressed output
+ set(GZ_DECOMPRESS_COMMAND ${GZIP} -d)
+
+ message(STATUS "Gzip decompress ${GZ_DECOMPRESS_COMMAND}")
+ message(STATUS " Input: ${OUTPUT_BASE}.gz")
+ message(STATUS " Output: ${OUTPUT_BASE}-ungzip")
+
+ exec_streams("${GZ_DECOMPRESS_COMMAND}" "${OUTPUT_BASE}.gz" "${OUTPUT_BASE}-ungzip")
+
+ if(CMD_RESULT)
+ cleanup()
+ message(FATAL_ERROR "Gzip decompress failed: ${CMD_RESULT}")
+ endif()
+
+ # Compare gzip output with original input file
+ execute_process(COMMAND ${CMAKE_COMMAND}
+ -E compare_files ${INPUT} ${OUTPUT_BASE}-ungzip
+ RESULT_VARIABLE CMD_RESULT)
+
+ if(CMD_RESULT)
+ diff(${INPUT} ${OUTPUT_BASE}-ungzip)
+ cleanup()
+ message(FATAL_ERROR "Compare gzip decompress failed: ${CMD_RESULT}")
+ endif()
+
+ # Compress input file with gzip
+ set(GZ_COMPRESS_COMMAND ${GZIP} --stdout)
+
+ message(STATUS "Gzip compress ${GZ_COMPRESS_COMMAND}")
+ message(STATUS " Input: ${INPUT}")
+ message(STATUS " Output: ${OUTPUT_BASE}-gzip.gz")
+
+ exec_streams("${GZ_COMPRESS_COMMAND}" "${INPUT}" "${OUTPUT_BASE}-gzip.gz")
+
+ if(CMD_RESULT)
+ cleanup()
+ message(FATAL_ERROR "Gzip compress failed: ${CMD_RESULT}")
+ endif()
+
+ if(NOT EXISTS ${OUTPUT_BASE}-gzip.gz)
+ cleanup()
+ message(FATAL_ERROR "Cannot find decompress gzip input: ${OUTPUT_BASE}-gzip.gz")
+ endif()
+
+ message(STATUS "Decompress gzip ${DECOMPRESS_COMMAND}")
+ message(STATUS " Input: ${OUTPUT_BASE}-gzip.gz")
+ message(STATUS " Output: ${OUTPUT_BASE}-gzip")
+
+ # Check decompress target can handle gzip compressed output
+ if(FILEMODE)
+ exec_files("${DECOMPRESS_COMMAND}" "${OUTPUT_BASE}-gzip.gz")
+ else()
+ exec_streams("${DECOMPRESS_COMMAND}" "${OUTPUT_BASE}-gzip.gz" "${OUTPUT_BASE}-gzip")
+ endif()
+
+ if(CMD_RESULT)
+ cleanup()
+ message(FATAL_ERROR "Decompress gzip failed: ${CMD_RESULT}")
+ endif()
+
+ if(COMPARE)
+ # Compare original input file with gzip decompressed output
+ execute_process(COMMAND ${CMAKE_COMMAND}
+ -E compare_files ${INPUT} ${OUTPUT_BASE}-gzip
+ RESULT_VARIABLE CMD_RESULT)
+
+ if(CMD_RESULT)
+ diff(${INPUT} ${OUTPUT_BASE}-gzip)
+ cleanup()
+ message(FATAL_ERROR "Compare decompress gzip failed: ${CMD_RESULT}")
+ endif()
+ endif()
+ endif()
+endif()
+
+cleanup_always()
diff --git a/neozip/test/cmake/run-and-compare.cmake b/neozip/test/cmake/run-and-compare.cmake
new file mode 100644
index 0000000000..eb2218dcb5
--- /dev/null
+++ b/neozip/test/cmake/run-and-compare.cmake
@@ -0,0 +1,72 @@
+# run-and-compare.cmake -- Runs a command and compares its output to an expected value
+
+# Copyright (C) 2021 Nathan Moinvaziri
+# Licensed under the Zlib license, see LICENSE.md for details
+
+# Required Variables
+# COMMAND - Command to run
+# OUTPUT - Standard output
+# COMPARE - String to compare output against
+
+# Optional Variables
+# INPUT - Standard input
+# IGNORE_LINE_ENDINGS - Ignore line endings when comparing output
+
+if(NOT DEFINED OUTPUT OR NOT DEFINED COMPARE OR NOT DEFINED COMMAND)
+ message(FATAL_ERROR "Run and compare arguments missing")
+endif()
+
+# Ensure directory exists for output files
+get_filename_component(OUTPUT_DIR "${OUTPUT}" DIRECTORY)
+file(MAKE_DIRECTORY "${OUTPUT_DIR}")
+
+if(INPUT)
+ # Run command with stdin input and redirect stdout to output
+ execute_process(COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${COMMAND}"
+ -DINPUT=${INPUT}
+ -DOUTPUT=${OUTPUT}
+ "-DSUCCESS_EXIT=${SUCCESS_EXIT}"
+ -P ${CMAKE_CURRENT_LIST_DIR}/run-and-redirect.cmake
+ RESULT_VARIABLE CMD_RESULT)
+else()
+ # Run command and redirect stdout to output
+ execute_process(COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${COMMAND}"
+ -DOUTPUT=${OUTPUT}
+ "-DSUCCESS_EXIT=${SUCCESS_EXIT}"
+ -P ${CMAKE_CURRENT_LIST_DIR}/run-and-redirect.cmake
+ RESULT_VARIABLE CMD_RESULT)
+endif()
+
+if(CMD_RESULT)
+ message(FATAL_ERROR "Run before compare failed: ${CMD_RESULT}")
+endif()
+
+# Use configure_file to normalize line-endings
+if(IGNORE_LINE_ENDINGS)
+ # Rewrite files with normalized line endings to temporary directory
+ get_filename_component(COMPARE_NAME ${COMPARE} NAME)
+ set(COMPARE_TEMP ${CMAKE_CURRENT_BINARY_DIR}/Testing/Temporary/${COMPARE_NAME}.cmp)
+ configure_file(${COMPARE} ${COMPARE_TEMP} NEWLINE_STYLE LF)
+ set(COMPARE ${COMPARE_TEMP})
+
+ get_filename_component(OUTPUT_NAME ${OUTPUT} NAME)
+ set(OUTPUT_TEMP ${CMAKE_CURRENT_BINARY_DIR}/Testing/Temporary/${OUTPUT_NAME}.cmp)
+ configure_file(${OUTPUT} ${OUTPUT_TEMP} NEWLINE_STYLE LF)
+ set(OUTPUT ${OUTPUT_TEMP})
+endif()
+
+# Compare that output is equal to specified file
+execute_process(COMMAND ${CMAKE_COMMAND}
+ -E compare_files ${COMPARE} ${OUTPUT}
+ RESULT_VARIABLE CMD_RESULT)
+
+# Delete temporary files used to normalize line-endings
+if(IGNORE_LINE_ENDINGS)
+ file(REMOVE ${COMPARE} ${OUTPUT})
+endif()
+
+if(CMD_RESULT)
+ message(FATAL_ERROR "Run compare failed: ${CMD_RESULT}")
+endif()
diff --git a/neozip/test/cmake/run-and-redirect.cmake b/neozip/test/cmake/run-and-redirect.cmake
new file mode 100644
index 0000000000..6651d1a302
--- /dev/null
+++ b/neozip/test/cmake/run-and-redirect.cmake
@@ -0,0 +1,54 @@
+# run-and-redirect.cmake -- Runs a command and validates exit code
+
+# Copyright (C) 2021 Nathan Moinvaziri
+# Licensed under the Zlib license, see LICENSE.md for details
+
+# Normally ctest will always fail with non-zero exit code, but we have tests
+# that need to check specific exit codes.
+
+# Required Variables
+# COMMAND - Command to run
+
+# Optional Variables
+# INPUT - Standard input
+# OUTPUT - Standard output (default: /dev/null)
+# SUCCESS_EXIT - List of successful exit codes (default: 0, ie: 0;1)
+
+# If no output is specified, discard output
+if(NOT DEFINED OUTPUT)
+ if(WIN32)
+ set(OUTPUT NUL)
+ else()
+ set(OUTPUT /dev/null)
+ endif()
+endif()
+
+if(INPUT)
+ # Check to see that input file exists
+ if(NOT EXISTS ${INPUT})
+ message(FATAL_ERROR "Cannot find input: ${INPUT}")
+ endif()
+ # Execute with both stdin and stdout file
+ execute_process(COMMAND ${COMMAND}
+ RESULT_VARIABLE CMD_RESULT
+ INPUT_FILE ${INPUT}
+ OUTPUT_FILE ${OUTPUT})
+else()
+ # Execute with only stdout file
+ execute_process(COMMAND ${COMMAND}
+ RESULT_VARIABLE CMD_RESULT
+ OUTPUT_FILE ${OUTPUT})
+endif()
+
+# Check if exit code is in list of successful exit codes
+if(SUCCESS_EXIT)
+ list(FIND SUCCESS_EXIT ${CMD_RESULT} _INDEX)
+ if (${_INDEX} GREATER -1)
+ set(CMD_RESULT 0)
+ endif()
+endif()
+
+# Check to see if successful
+if(CMD_RESULT)
+ message(FATAL_ERROR "${COMMAND} failed: ${CMD_RESULT}")
+endif()
diff --git a/neozip/test/cmake/test-cves.cmake b/neozip/test/cmake/test-cves.cmake
new file mode 100644
index 0000000000..4a08604034
--- /dev/null
+++ b/neozip/test/cmake/test-cves.cmake
@@ -0,0 +1,33 @@
+# test-cves.cmake -- Tests targeting common vulnerabilities and exposures
+
+set(CVES CVE-2002-0059 CVE-2004-0797 CVE-2005-1849 CVE-2005-2096)
+foreach(cve ${CVES})
+ set(CVE_COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:minigzip> -d)
+ add_test(NAME ${cve}
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${CVE_COMMAND}"
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/${cve}/test.gz
+ "-DSUCCESS_EXIT=0;1"
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-redirect.cmake)
+endforeach()
+
+set(CVE_COMPRESS_LEVELS 6 1 2)
+foreach(cve_compress_level ${CVE_COMPRESS_LEVELS})
+ add_test(NAME CVE-2018-25032-fixed-level-${cve_compress_level}
+ COMMAND ${CMAKE_COMMAND}
+ "-DTARGET=${MINIDEFLATE_COMMAND}"
+ "-DCOMPRESS_ARGS=-c;-k;-m;1;-w;-15;-s;4;-F;-${cve_compress_level}"
+ "-DDECOMPRESS_ARGS=-c;-k;-d;-m;1;-w;-15;-${cve_compress_level}"
+ -DGZIP_VERIFY=OFF
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/CVE-2018-25032/fixed.txt
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+
+ add_test(NAME CVE-2018-25032-default-level-${cve_compress_level}
+ COMMAND ${CMAKE_COMMAND}
+ "-DTARGET=${MINIDEFLATE_COMMAND}"
+ "-DCOMPRESS_ARGS=-c;-k;-m;1;-w;-15;-s;4;-${cve_compress_level}"
+ "-DDECOMPRESS_ARGS=-c;-k;-d;-m;1;-w;-15;-${cve_compress_level}"
+ -DGZIP_VERIFY=OFF
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/CVE-2018-25032/default.txt
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+endforeach()
diff --git a/neozip/test/cmake/test-data.cmake b/neozip/test/cmake/test-data.cmake
new file mode 100644
index 0000000000..e60c356e46
--- /dev/null
+++ b/neozip/test/cmake/test-data.cmake
@@ -0,0 +1,68 @@
+# test-data.cmake - Tests targeting data files in the data directory
+
+# Test compress and verify test against data file using extra args
+macro(test_minigzip name path)
+ # Construct compression arguments for minigzip
+ set(compress_args -k -c)
+ foreach(extra_arg IN ITEMS "${ARGN}")
+ list(APPEND compress_args ${extra_arg})
+ endforeach()
+
+ # Create unique friendly string for test
+ string(REPLACE ";" "" arg_list "${ARGN}")
+ string(REPLACE " " "" arg_list "${arg_list}")
+ string(REPLACE "-" "" arg_list "${arg_list}")
+
+ set(test_id minigzip-${name}-${arg_list})
+
+ if(NOT TEST ${test_id})
+ add_test(NAME ${test_id}
+ COMMAND ${CMAKE_COMMAND}
+ "-DTARGET=${MINIGZIP_COMMAND}"
+ "-DCOMPRESS_ARGS=${compress_args}"
+ "-DDECOMPRESS_ARGS=-d;-c"
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/${path}
+ -DTEST_NAME=${test_id}
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+ endif()
+endmacro()
+
+# List of arg combinations to use during compression
+set(TEST_CONFIGS
+ -R # Z_RLE
+ -h # Z_HUFFMAN_ONLY
+ -T # Direct store
+ -0 # No compression
+ -1 # Deflate quick
+ -2 # Deflate fast
+ -4 # Deflate medium (lazy matches)
+ "-5;-F" # Deflate medium (Z_FIXED)
+ -6 # Deflate medium
+ -9 # Deflate slow
+ "-9;-f" # Deflate slow (Z_FILTERED)
+)
+
+# Enumerate all files in data directory to run tests against
+file(GLOB_RECURSE TEST_FILE_PATHS
+ LIST_DIRECTORIES false
+ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
+ ${CMAKE_CURRENT_SOURCE_DIR}/data/*)
+
+# For all files in the data directory, run tests against them
+foreach(test_file_path ${TEST_FILE_PATHS})
+ if("${test_file_path}" MATCHES ".gz$" OR "${test_file_path}" MATCHES ".out$" OR
+ "${test_file_path}" MATCHES "/.git/" OR "${test_file_path}" MATCHES ".md$")
+ continue()
+ endif()
+ foreach(test_config ${TEST_CONFIGS})
+ get_filename_component(test_name ${test_file_path} NAME)
+ if (test_name STREQUAL "")
+ continue()
+ endif()
+ test_minigzip(${test_name} ${test_file_path} ${test_config})
+ endforeach()
+endforeach()
+
+# Additional tests to verify with automatic data type detection arg
+test_minigzip("detect-text" "data/lcet10.txt" -A)
+test_minigzip("detect-binary" "data/paper-100k.pdf" -A)
diff --git a/neozip/test/cmake/test-issues.cmake b/neozip/test/cmake/test-issues.cmake
new file mode 100644
index 0000000000..e731dd57dd
--- /dev/null
+++ b/neozip/test/cmake/test-issues.cmake
@@ -0,0 +1,84 @@
+# test-issues.cmake -- Tests targeting specific GitHub issues
+
+add_test(NAME GH-361
+ COMMAND ${CMAKE_COMMAND}
+ "-DTARGET=${MINIGZIP_COMMAND}"
+ "-DCOMPRESS_ARGS=-c;-k;-4"
+ -DTEST_NAME=GH-361-test-txt
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/GH-361/test.txt
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+
+add_test(NAME GH-364
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMPRESS_TARGET=${SWITCHLEVELS_COMMAND}"
+ "-DCOMPRESS_ARGS=1;5;9;3"
+ "-DDECOMPRESS_TARGET=${MINIGZIP_COMMAND}"
+ -DTEST_NAME=GH-364-test-bin
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/GH-364/test.bin
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+
+add_test(NAME GH-382
+ COMMAND ${CMAKE_COMMAND}
+ "-DTARGET=${MINIDEFLATE_COMMAND}"
+ "-DCOMPRESS_ARGS=-c;-m;1;-w;-15;-1;-s;4"
+ "-DDECOMPRESS_ARGS=-c;-d;-m;1;-w;-15"
+ -DGZIP_VERIFY=OFF
+ -DTEST_NAME=GH-382-defneg3-dat
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/GH-382/defneg3.dat
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+
+add_test(NAME GH-536-segfault
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMPRESS_TARGET=${SWITCHLEVELS_COMMAND}"
+ "-DCOMPRESS_ARGS=6;9744;1;91207"
+ "-DDECOMPRESS_TARGET=${MINIGZIP_COMMAND}"
+ -DCOMPARE=OFF
+ -DGZIP_VERIFY=OFF
+ -DTEST_NAME=GH-536-segfault-lcet10-txt
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/data/lcet10.txt
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+
+add_test(NAME GH-536-incomplete-read
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMPRESS_TARGET=${SWITCHLEVELS_COMMAND}"
+ "-DCOMPRESS_ARGS=6;88933;1;195840;2;45761"
+ "-DDECOMPRESS_TARGET=${MINIGZIP_COMMAND}"
+ -DCOMPARE=OFF
+ -DGZIP_VERIFY=OFF
+ -DTEST_NAME=GH-536-incomplete-read-lcet10-txt
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/data/lcet10.txt
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+
+add_test(NAME GH-536-zero-stored-block
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMPRESS_TARGET=${SWITCHLEVELS_COMMAND}"
+ "-DCOMPRESS_ARGS=6;15248;1;1050;2;25217"
+ "-DDECOMPRESS_TARGET=${MINIGZIP_COMMAND}"
+ -DCOMPARE=OFF
+ -DGZIP_VERIFY=OFF
+ -DTEST_NAME=GH-536-zero-stored-block-lcet10-txt
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/data/lcet10.txt
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+
+add_test(NAME GH-751
+ COMMAND ${CMAKE_COMMAND}
+ "-DTARGET=${MINIGZIP_COMMAND}"
+ -DTEST_NAME=GH-751-test-txt
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/GH-751/test.txt
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+
+set(TEST_COMMAND "${MINIDEFLATE_COMMAND};-c;-d;-k;-s;4")
+add_test(NAME GH-1600-no-window-check
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${TEST_COMMAND}"
+ "-DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/GH-1600/packobj.gz"
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-redirect.cmake
+)
+
+set(TEST_COMMAND "${MINIDEFLATE_COMMAND};-c;-d;-k;-s;4;-r;25")
+add_test(NAME GH-1600-no-window-no-check
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${TEST_COMMAND}"
+ "-DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/GH-1600/packobj.gz"
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-redirect.cmake
+)
diff --git a/neozip/test/cmake/test-tools.cmake b/neozip/test/cmake/test-tools.cmake
new file mode 100644
index 0000000000..c2a683fbd9
--- /dev/null
+++ b/neozip/test/cmake/test-tools.cmake
@@ -0,0 +1,80 @@
+# test-tools.cmake -- Tests targeting tool coverage
+
+# Compress and decompress using file_compress/file_decompress, optionally also testing MMAP
+add_test(NAME minigzip-file_compress
+ COMMAND ${CMAKE_COMMAND}
+ "-DTARGET=${MINIGZIP_COMMAND}"
+ -DFILEMODE=ON
+ -DGZIP_VERIFY=ON
+ -DTEST_NAME=minigzip-file_compress
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/data/paper-100k.pdf
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+
+add_test(NAME minideflate-file_compress
+ COMMAND ${CMAKE_COMMAND}
+ "-DTARGET=${MINIDEFLATE_COMMAND}"
+ -DFILEMODE=ON
+ -DGZIP_VERIFY=OFF
+ -DTEST_NAME=minideflate-file_compress
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/data/paper-100k.pdf
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compress-and-verify.cmake)
+
+# Test --help and invalid parameters for our tools
+set(TEST_COMMAND ${MINIGZIP_COMMAND} "--help")
+add_test(NAME minigzip-help
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${TEST_COMMAND}"
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-redirect.cmake)
+
+set(TEST_COMMAND ${MINIGZIP_COMMAND} "--invalid")
+add_test(NAME minigzip-invalid
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${TEST_COMMAND}"
+ -DSUCCESS_EXIT=64
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-redirect.cmake)
+
+set(TEST_COMMAND ${MINIDEFLATE_COMMAND} "--help")
+add_test(NAME minideflate-help
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${TEST_COMMAND}"
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-redirect.cmake)
+
+set(TEST_COMMAND ${MINIDEFLATE_COMMAND} "--invalid")
+add_test(NAME minideflate-invalid
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${TEST_COMMAND}"
+ -DSUCCESS_EXIT=64
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-redirect.cmake)
+
+set(TEST_COMMAND ${SWITCHLEVELS_COMMAND} "--help")
+add_test(NAME switchlevels-help
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${TEST_COMMAND}"
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-redirect.cmake)
+
+# Test generated crc32 tables match tables in source directory
+add_test(NAME makecrct
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${MAKECRCT_COMMAND}"
+ -DOUTPUT=${PROJECT_BINARY_DIR}/Testing/Temporary/crc32_braid_tbl._h
+ -DCOMPARE=${PROJECT_SOURCE_DIR}/crc32_braid_tbl.h
+ -DIGNORE_LINE_ENDINGS=ON
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-compare.cmake)
+
+# Test generated inflate tables match tables in source directory
+add_test(NAME makefixed
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${MAKEFIXED_COMMAND}"
+ -DOUTPUT=${PROJECT_BINARY_DIR}/Testing/Temporary/inffixed_tbl._h
+ -DCOMPARE=${PROJECT_SOURCE_DIR}/inffixed_tbl.h
+ -DIGNORE_LINE_ENDINGS=ON
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-compare.cmake)
+
+# Test generated tree tables match tables in source directory
+add_test(NAME maketrees
+ COMMAND ${CMAKE_COMMAND}
+ "-DCOMMAND=${MAKETREES_COMMAND}"
+ -DOUTPUT=${PROJECT_BINARY_DIR}/Testing/Temporary/trees_tbl._h
+ -DCOMPARE=${PROJECT_SOURCE_DIR}/trees_tbl.h
+ -DIGNORE_LINE_ENDINGS=ON
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/run-and-compare.cmake)
diff --git a/neozip/test/compressible_data_p.h b/neozip/test/compressible_data_p.h
new file mode 100644
index 0000000000..e345bb9c91
--- /dev/null
+++ b/neozip/test/compressible_data_p.h
@@ -0,0 +1,54 @@
+/* compressible_data_p.h -- generate compressible data
+ * Copyright (C) 2025 Hans Kristian Rosbach
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#ifndef COMPRESSIBLE_DATA_P_H
+#define COMPRESSIBLE_DATA_P_H
+
+
+static inline size_t append_raw(uint8_t *dest, size_t size, const void *src, size_t len) {
+ if (len > size) len = size;
+ if (len == 0) return 0;
+ memcpy(dest, src, len);
+ return len;
+}
+static inline size_t append_str(uint8_t *dest, size_t size, const char *src) {
+ return append_raw(dest, size, src, strlen(src));
+}
+static inline size_t append_uint8_t(uint8_t *dest, size_t size, uint8_t src) {
+ return append_raw(dest, size, &src, 1);
+}
+
+// Alloc and initialize buffer with highly compressible data,
+// interspersed with small amounts of random data and 3-byte matches.
+static uint8_t *gen_compressible_data(size_t bufsize) {
+ const char teststr1[42] = "Hello hello World broken Test tast mello.";
+ const char teststr2[32] = "llollollollollo He Te me orld";
+ const char teststr3[4] = "bro";
+ int loops = 0;
+
+ uint8_t *buffer = (uint8_t *)malloc(bufsize);
+ if (buffer == NULL) {
+ return NULL;
+ }
+
+ for (size_t pos = 0; pos < bufsize; ) {
+ pos += append_str(buffer+pos, bufsize-pos, teststr1);
+ pos += append_uint8_t(buffer+pos, bufsize-pos, (uint8_t)(rand() & 0xFF));
+ // Every so often, add a few other little bits to break the pattern
+ if (loops % 13 == 0) {
+ pos += append_str(buffer+pos, bufsize-pos, teststr3);
+ pos += append_uint8_t(buffer+pos, bufsize-pos, (uint8_t)(rand() & 0xFF));
+ }
+ if (loops % 300 == 0) { // Only found once or twice per window
+ pos += append_str(buffer+pos, bufsize-pos, teststr2);
+ }
+ loops++;
+ }
+ if (bufsize > 0) {
+ buffer[bufsize-1] = 0;
+ }
+ return buffer;
+}
+#endif
diff --git a/neozip/test/data/fireworks.jpg b/neozip/test/data/fireworks.jpg
new file mode 100644
index 0000000000..078cf1755d
--- /dev/null
+++ b/neozip/test/data/fireworks.jpg
Binary files differ
diff --git a/neozip/test/data/lcet10.txt b/neozip/test/data/lcet10.txt
new file mode 100644
index 0000000000..1dbdfc56e4
--- /dev/null
+++ b/neozip/test/data/lcet10.txt
@@ -0,0 +1,7519 @@
+
+
+The Project Gutenberg Etext of LOC WORKSHOP ON ELECTRONIC TEXTS
+
+
+
+
+ WORKSHOP ON ELECTRONIC TEXTS
+
+ PROCEEDINGS
+
+
+
+ Edited by James Daly
+
+
+
+
+
+
+
+ 9-10 June 1992
+
+
+ Library of Congress
+ Washington, D.C.
+
+
+
+ Supported by a Grant from the David and Lucile Packard Foundation
+
+
+ *** *** *** ****** *** *** ***
+
+
+ TABLE OF CONTENTS
+
+
+Acknowledgements
+
+Introduction
+
+Proceedings
+ Welcome
+ Prosser Gifford and Carl Fleischhauer
+
+ Session I. Content in a New Form: Who Will Use It and What Will They Do?
+ James Daly (Moderator)
+ Avra Michelson, Overview
+ Susan H. Veccia, User Evaluation
+ Joanne Freeman, Beyond the Scholar
+ Discussion
+
+ Session II. Show and Tell
+ Jacqueline Hess (Moderator)
+ Elli Mylonas, Perseus Project
+ Discussion
+ Eric M. Calaluca, Patrologia Latina Database
+ Carl Fleischhauer and Ricky Erway, American Memory
+ Discussion
+ Dorothy Twohig, The Papers of George Washington
+ Discussion
+ Maria L. Lebron, The Online Journal of Current Clinical Trials
+ Discussion
+ Lynne K. Personius, Cornell mathematics books
+ Discussion
+
+ Session III. Distribution, Networks, and Networking:
+ Options for Dissemination
+ Robert G. Zich (Moderator)
+ Clifford A. Lynch
+ Discussion
+ Howard Besser
+ Discussion
+ Ronald L. Larsen
+ Edwin B. Brownrigg
+ Discussion
+
+ Session IV. Image Capture, Text Capture, Overview of Text and
+ Image Storage Formats
+ William L. Hooton (Moderator)
+ A) Principal Methods for Image Capture of Text:
+ direct scanning, use of microform
+ Anne R. Kenney
+ Pamela Q.J. Andre
+ Judith A. Zidar
+ Donald J. Waters
+ Discussion
+ B) Special Problems: bound volumes, conservation,
+ reproducing printed halftones
+ George Thoma
+ Carl Fleischhauer
+ Discussion
+ C) Image Standards and Implications for Preservation
+ Jean Baronas
+ Patricia Battin
+ Discussion
+ D) Text Conversion: OCR vs. rekeying, standards of accuracy
+ and use of imperfect texts, service bureaus
+ Michael Lesk
+ Ricky Erway
+ Judith A. Zidar
+ Discussion
+
+ Session V. Approaches to Preparing Electronic Texts
+ Susan Hockey (Moderator)
+ Stuart Weibel
+ Discussion
+ C.M. Sperberg-McQueen
+ Discussion
+ Eric M. Calaluca
+ Discussion
+
+ Session VI. Copyright Issues
+ Marybeth Peters
+
+ Session VII. Conclusion
+ Prosser Gifford (Moderator)
+ General discussion
+
+Appendix I: Program
+
+Appendix II: Abstracts
+
+Appendix III: Directory of Participants
+
+
+ *** *** *** ****** *** *** ***
+
+
+ Acknowledgements
+
+I would like to thank Carl Fleischhauer and Prosser Gifford for the
+opportunity to learn about areas of human activity unknown to me a scant
+ten months ago, and the David and Lucile Packard Foundation for
+supporting that opportunity. The help given by others is acknowledged on
+a separate page.
+
+ 19 October 1992
+
+
+ *** *** *** ****** *** *** ***
+
+
+ INTRODUCTION
+
+The Workshop on Electronic Texts (1) drew together representatives of
+various projects and interest groups to compare ideas, beliefs,
+experiences, and, in particular, methods of placing and presenting
+historical textual materials in computerized form. Most attendees gained
+much in insight and outlook from the event. But the assembly did not
+form a new nation, or, to put it another way, the diversity of projects
+and interests was too great to draw the representatives into a cohesive,
+action-oriented body.(2)
+
+Everyone attending the Workshop shared an interest in preserving and
+providing access to historical texts. But within this broad field the
+attendees represented a variety of formal, informal, figurative, and
+literal groups, with many individuals belonging to more than one. These
+groups may be defined roughly according to the following topics or
+activities:
+
+* Imaging
+* Searchable coded texts
+* National and international computer networks
+* CD-ROM production and dissemination
+* Methods and technology for converting older paper materials into
+electronic form
+* Study of the use of digital materials by scholars and others
+
+This summary is arranged thematically and does not follow the actual
+sequence of presentations.
+
+NOTES:
+ (1) In this document, the phrase electronic text is used to mean
+ any computerized reproduction or version of a document, book,
+ article, or manuscript (including images), and not merely a machine-
+ readable or machine-searchable text.
+
+ (2) The Workshop was held at the Library of Congress on 9-10 June
+ 1992, with funding from the David and Lucile Packard Foundation.
+ The document that follows represents a summary of the presentations
+ made at the Workshop and was compiled by James DALY. This
+ introduction was written by DALY and Carl FLEISCHHAUER.
+
+
+PRESERVATION AND IMAGING
+
+Preservation, as that term is used by archivists,(3) was most explicitly
+discussed in the context of imaging. Anne KENNEY and Lynne PERSONIUS
+explained how the concept of a faithful copy and the user-friendliness of
+the traditional book have guided their project at Cornell University.(4)
+Although interested in computerized dissemination, participants in the
+Cornell project are creating digital image sets of older books in the
+public domain as a source for a fresh paper facsimile or, in a future
+phase, microfilm. The books returned to the library shelves are
+high-quality and useful replacements on acid-free paper that should last
+a long time. To date, the Cornell project has placed little or no
+emphasis on creating searchable texts; one would not be surprised to find
+that the project participants view such texts as new editions, and thus
+not as faithful reproductions.
+
+In her talk on preservation, Patricia BATTIN struck an ecumenical and
+flexible note as she endorsed the creation and dissemination of a variety
+of types of digital copies. Do not be too narrow in defining what counts
+as a preservation element, BATTIN counseled; for the present, at least,
+digital copies made with preservation in mind cannot be as narrowly
+standardized as, say, microfilm copies with the same objective. Setting
+standards precipitously can inhibit creativity, but delay can result in
+chaos, she advised.
+
+In part, BATTIN's position reflected the unsettled nature of image-format
+standards, and attendees could hear echoes of this unsettledness in the
+comments of various speakers. For example, Jean BARONAS reviewed the
+status of several formal standards moving through committees of experts;
+and Clifford LYNCH encouraged the use of a new guideline for transmitting
+document images on Internet. Testimony from participants in the National
+Agricultural Library's (NAL) Text Digitization Program and LC's American
+Memory project highlighted some of the challenges to the actual creation
+or interchange of images, including difficulties in converting
+preservation microfilm to digital form. Donald WATERS reported on the
+progress of a master plan for a project at Yale University to convert
+books on microfilm to digital image sets, Project Open Book (POB).
+
+The Workshop offered rather less of an imaging practicum than planned,
+but "how-to" hints emerge at various points, for example, throughout
+KENNEY's presentation and in the discussion of arcana such as
+thresholding and dithering offered by George THOMA and FLEISCHHAUER.
+
+NOTES:
+ (3) Although there is a sense in which any reproductions of
+ historical materials preserve the human record, specialists in the
+ field have developed particular guidelines for the creation of
+ acceptable preservation copies.
+
+ (4) Titles and affiliations of presenters are given at the
+ beginning of their respective talks and in the Directory of
+ Participants (Appendix III).
+
+
+THE MACHINE-READABLE TEXT: MARKUP AND USE
+
+The sections of the Workshop that dealt with machine-readable text tended
+to be more concerned with access and use than with preservation, at least
+in the narrow technical sense. Michael SPERBERG-McQUEEN made a forceful
+presentation on the Text Encoding Initiative's (TEI) implementation of
+the Standard Generalized Markup Language (SGML). His ideas were echoed
+by Susan HOCKEY, Elli MYLONAS, and Stuart WEIBEL. While the
+presentations made by the TEI advocates contained no practicum, their
+discussion focused on the value of the finished product, what the
+European Community calls reusability, but what may also be termed
+durability. They argued that marking up--that is, coding--a text in a
+well-conceived way will permit it to be moved from one computer
+environment to another, as well as to be used by various users. Two
+kinds of markup were distinguished: 1) procedural markup, which
+describes the features of a text (e.g., dots on a page), and 2)
+descriptive markup, which describes the structure or elements of a
+document (e.g., chapters, paragraphs, and front matter).
+
+The TEI proponents emphasized the importance of texts to scholarship.
+They explained how heavily coded (and thus analyzed and annotated) texts
+can underlie research, play a role in scholarly communication, and
+facilitate classroom teaching. SPERBERG-McQUEEN reminded listeners that
+a written or printed item (e.g., a particular edition of a book) is
+merely a representation of the abstraction we call a text. To concern
+ourselves with faithfully reproducing a printed instance of the text,
+SPERBERG-McQUEEN argued, is to concern ourselves with the representation
+of a representation ("images as simulacra for the text"). The TEI proponents'
+interest in images tends to focus on corollary materials for use in teaching,
+for example, photographs of the Acropolis to accompany a Greek text.
+
+By the end of the Workshop, SPERBERG-McQUEEN confessed to having been
+converted to a limited extent to the view that electronic images
+constitute a promising alternative to microfilming; indeed, an
+alternative probably superior to microfilming. But he was not convinced
+that electronic images constitute a serious attempt to represent text in
+electronic form. HOCKEY and MYLONAS also conceded that their experience
+at the Pierce Symposium the previous week at Georgetown University and
+the present conference at the Library of Congress had compelled them to
+reevaluate their perspective on the usefulness of text as images.
+Attendees could see that the text and image advocates were in
+constructive tension, so to say.
+
+Three nonTEI presentations described approaches to preparing
+machine-readable text that are less rigorous and thus less expensive. In
+the case of the Papers of George Washington, Dorothy TWOHIG explained
+that the digital version will provide a not-quite-perfect rendering of
+the transcribed text--some 135,000 documents, available for research
+during the decades while the perfect or print version is completed.
+Members of the American Memory team and the staff of NAL's Text
+Digitization Program (see below) also outlined a middle ground concerning
+searchable texts. In the case of American Memory, contractors produce
+texts with about 99-percent accuracy that serve as "browse" or
+"reference" versions of written or printed originals. End users who need
+faithful copies or perfect renditions must refer to accompanying sets of
+digital facsimile images or consult copies of the originals in a nearby
+library or archive. American Memory staff argued that the high cost of
+producing 100-percent accurate copies would prevent LC from offering
+access to large parts of its collections.
+
+
+THE MACHINE-READABLE TEXT: METHODS OF CONVERSION
+
+Although the Workshop did not include a systematic examination of the
+methods for converting texts from paper (or from facsimile images) into
+machine-readable form, nevertheless, various speakers touched upon this
+matter. For example, WEIBEL reported that OCLC has experimented with a
+merging of multiple optical character recognition systems that will
+reduce errors from an unacceptable rate of 5 characters out of every
+l,000 to an unacceptable rate of 2 characters out of every l,000.
+
+Pamela ANDRE presented an overview of NAL's Text Digitization Program and
+Judith ZIDAR discussed the technical details. ZIDAR explained how NAL
+purchased hardware and software capable of performing optical character
+recognition (OCR) and text conversion and used its own staff to convert
+texts. The process, ZIDAR said, required extensive editing and project
+staff found themselves considering alternatives, including rekeying
+and/or creating abstracts or summaries of texts. NAL reckoned costs at
+$7 per page. By way of contrast, Ricky ERWAY explained that American
+Memory had decided from the start to contract out conversion to external
+service bureaus. The criteria used to select these contractors were cost
+and quality of results, as opposed to methods of conversion. ERWAY noted
+that historical documents or books often do not lend themselves to OCR.
+Bound materials represent a special problem. In her experience, quality
+control--inspecting incoming materials, counting errors in samples--posed
+the most time-consuming aspect of contracting out conversion. ERWAY
+reckoned American Memory's costs at $4 per page, but cautioned that fewer
+cost-elements had been included than in NAL's figure.
+
+
+OPTIONS FOR DISSEMINATION
+
+The topic of dissemination proper emerged at various points during the
+Workshop. At the session devoted to national and international computer
+networks, LYNCH, Howard BESSER, Ronald LARSEN, and Edwin BROWNRIGG
+highlighted the virtues of Internet today and of the network that will
+evolve from Internet. Listeners could discern in these narratives a
+vision of an information democracy in which millions of citizens freely
+find and use what they need. LYNCH noted that a lack of standards
+inhibits disseminating multimedia on the network, a topic also discussed
+by BESSER. LARSEN addressed the issues of network scalability and
+modularity and commented upon the difficulty of anticipating the effects
+of growth in orders of magnitude. BROWNRIGG talked about the ability of
+packet radio to provide certain links in a network without the need for
+wiring. However, the presenters also called attention to the
+shortcomings and incongruities of present-day computer networks. For
+example: 1) Network use is growing dramatically, but much network
+traffic consists of personal communication (E-mail). 2) Large bodies of
+information are available, but a user's ability to search across their
+entirety is limited. 3) There are significant resources for science and
+technology, but few network sources provide content in the humanities.
+4) Machine-readable texts are commonplace, but the capability of the
+system to deal with images (let alone other media formats) lags behind.
+A glimpse of a multimedia future for networks, however, was provided by
+Maria LEBRON in her overview of the Online Journal of Current Clinical
+Trials (OJCCT), and the process of scholarly publishing on-line.
+
+The contrasting form of the CD-ROM disk was never systematically
+analyzed, but attendees could glean an impression from several of the
+show-and-tell presentations. The Perseus and American Memory examples
+demonstrated recently published disks, while the descriptions of the
+IBYCUS version of the Papers of George Washington and Chadwyck-Healey's
+Patrologia Latina Database (PLD) told of disks to come. According to
+Eric CALALUCA, PLD's principal focus has been on converting Jacques-Paul
+Migne's definitive collection of Latin texts to machine-readable form.
+Although everyone could share the network advocates' enthusiasm for an
+on-line future, the possibility of rolling up one's sleeves for a session
+with a CD-ROM containing both textual materials and a powerful retrieval
+engine made the disk seem an appealing vessel indeed. The overall
+discussion suggested that the transition from CD-ROM to on-line networked
+access may prove far slower and more difficult than has been anticipated.
+
+
+WHO ARE THE USERS AND WHAT DO THEY DO?
+
+Although concerned with the technicalities of production, the Workshop
+never lost sight of the purposes and uses of electronic versions of
+textual materials. As noted above, those interested in imaging discussed
+the problematical matter of digital preservation, while the TEI proponents
+described how machine-readable texts can be used in research. This latter
+topic received thorough treatment in the paper read by Avra MICHELSON.
+She placed the phenomenon of electronic texts within the context of
+broader trends in information technology and scholarly communication.
+
+Among other things, MICHELSON described on-line conferences that
+represent a vigorous and important intellectual forum for certain
+disciplines. Internet now carries more than 700 conferences, with about
+80 percent of these devoted to topics in the social sciences and the
+humanities. Other scholars use on-line networks for "distance learning."
+Meanwhile, there has been a tremendous growth in end-user computing;
+professors today are less likely than their predecessors to ask the
+campus computer center to process their data. Electronic texts are one
+key to these sophisticated applications, MICHELSON reported, and more and
+more scholars in the humanities now work in an on-line environment.
+Toward the end of the Workshop, Michael LESK presented a corollary to
+MICHELSON's talk, reporting the results of an experiment that compared
+the work of one group of chemistry students using traditional printed
+texts and two groups using electronic sources. The experiment
+demonstrated that in the event one does not know what to read, one needs
+the electronic systems; the electronic systems hold no advantage at the
+moment if one knows what to read, but neither do they impose a penalty.
+
+DALY provided an anecdotal account of the revolutionizing impact of the
+new technology on his previous methods of research in the field of classics.
+His account, by extrapolation, served to illustrate in part the arguments
+made by MICHELSON concerning the positive effects of the sudden and radical
+transformation being wrought in the ways scholars work.
+
+Susan VECCIA and Joanne FREEMAN delineated the use of electronic
+materials outside the university. The most interesting aspect of their
+use, FREEMAN said, could be seen as a paradox: teachers in elementary
+and secondary schools requested access to primary source materials but,
+at the same time, found that "primariness" itself made these materials
+difficult for their students to use.
+
+
+OTHER TOPICS
+
+Marybeth PETERS reviewed copyright law in the United States and offered
+advice during a lively discussion of this subject. But uncertainty
+remains concerning the price of copyright in a digital medium, because a
+solution remains to be worked out concerning management and synthesis of
+copyrighted and out-of-copyright pieces of a database.
+
+As moderator of the final session of the Workshop, Prosser GIFFORD directed
+discussion to future courses of action and the potential role of LC in
+advancing them. Among the recommendations that emerged were the following:
+
+ * Workshop participants should 1) begin to think about working
+ with image material, but structure and digitize it in such a
+ way that at a later stage it can be interpreted into text, and
+ 2) find a common way to build text and images together so that
+ they can be used jointly at some stage in the future, with
+ appropriate network support, because that is how users will want
+ to access these materials. The Library might encourage attempts
+ to bring together people who are working on texts and images.
+
+ * A network version of American Memory should be developed or
+ consideration should be given to making the data in it
+ available to people interested in doing network multimedia.
+ Given the current dearth of digital data that is appealing and
+ unencumbered by extremely complex rights problems, developing a
+ network version of American Memory could do much to help make
+ network multimedia a reality.
+
+ * Concerning the thorny issue of electronic deposit, LC should
+ initiate a catalytic process in terms of distributed
+ responsibility, that is, bring together the distributed
+ organizations and set up a study group to look at all the
+ issues related to electronic deposit and see where we as a
+ nation should move. For example, LC might attempt to persuade
+ one major library in each state to deal with its state
+ equivalent publisher, which might produce a cooperative project
+ that would be equitably distributed around the country, and one
+ in which LC would be dealing with a minimal number of publishers
+ and minimal copyright problems. LC must also deal with the
+ concept of on-line publishing, determining, among other things,
+ how serials such as OJCCT might be deposited for copyright.
+
+ * Since a number of projects are planning to carry out
+ preservation by creating digital images that will end up in
+ on-line or near-line storage at some institution, LC might play
+ a helpful role, at least in the near term, by accelerating how
+ to catalog that information into the Research Library Information
+ Network (RLIN) and then into OCLC, so that it would be accessible.
+ This would reduce the possibility of multiple institutions digitizing
+ the same work.
+
+
+CONCLUSION
+
+The Workshop was valuable because it brought together partisans from
+various groups and provided an occasion to compare goals and methods.
+The more committed partisans frequently communicate with others in their
+groups, but less often across group boundaries. The Workshop was also
+valuable to attendees--including those involved with American Memory--who
+came less committed to particular approaches or concepts. These
+attendees learned a great deal, and plan to select and employ elements of
+imaging, text-coding, and networked distribution that suit their
+respective projects and purposes.
+
+Still, reality rears its ugly head: no breakthrough has been achieved.
+On the imaging side, one confronts a proliferation of competing
+data-interchange standards and a lack of consensus on the role of digital
+facsimiles in preservation. In the realm of machine-readable texts, one
+encounters a reasonably mature standard but methodological difficulties
+and high costs. These latter problems, of course, represent a special
+impediment to the desire, as it is sometimes expressed in the popular
+press, "to put the [contents of the] Library of Congress on line." In
+the words of one participant, there was "no solution to the economic
+problems--the projects that are out there are surviving, but it is going
+to be a lot of work to transform the information industry, and so far the
+investment to do that is not forthcoming" (LESK, per litteras).
+
+
+ *** *** *** ****** *** *** ***
+
+
+ PROCEEDINGS
+
+
+WELCOME
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+GIFFORD * Origin of Workshop in current Librarian's desire to make LC's
+collections more widely available * Desiderata arising from the prospect
+of greater interconnectedness *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+After welcoming participants on behalf of the Library of Congress,
+American Memory (AM), and the National Demonstration Lab, Prosser
+GIFFORD, director for scholarly programs, Library of Congress, located
+the origin of the Workshop on Electronic Texts in a conversation he had
+had considerably more than a year ago with Carl FLEISCHHAUER concerning
+some of the issues faced by AM. On the assumption that numerous other
+people were asking the same questions, the decision was made to bring
+together as many of these people as possible to ask the same questions
+together. In a deeper sense, GIFFORD said, the origin of the Workshop
+lay in the desire of the current Librarian of Congress, James H.
+Billington, to make the collections of the Library, especially those
+offering unique or unusual testimony on aspects of the American
+experience, available to a much wider circle of users than those few
+people who can come to Washington to use them. This meant that the
+emphasis of AM, from the outset, has been on archival collections of the
+basic material, and on making these collections themselves available,
+rather than selected or heavily edited products.
+
+From AM's emphasis followed the questions with which the Workshop began:
+who will use these materials, and in what form will they wish to use
+them. But an even larger issue deserving mention, in GIFFORD's view, was
+the phenomenal growth in Internet connectivity. He expressed the hope
+that the prospect of greater interconnectedness than ever before would
+lead to: 1) much more cooperative and mutually supportive endeavors; 2)
+development of systems of shared and distributed responsibilities to
+avoid duplication and to ensure accuracy and preservation of unique
+materials; and 3) agreement on the necessary standards and development of
+the appropriate directories and indices to make navigation
+straightforward among the varied resources that are, and increasingly
+will be, available. In this connection, GIFFORD requested that
+participants reflect from the outset upon the sorts of outcomes they
+thought the Workshop might have. Did those present constitute a group
+with sufficient common interests to propose a next step or next steps,
+and if so, what might those be? They would return to these questions the
+following afternoon.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+FLEISCHHAUER * Core of Workshop concerns preparation and production of
+materials * Special challenge in conversion of textual materials *
+Quality versus quantity * Do the several groups represented share common
+interests? *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Carl FLEISCHHAUER, coordinator, American Memory, Library of Congress,
+emphasized that he would attempt to represent the people who perform some
+of the work of converting or preparing materials and that the core of
+the Workshop had to do with preparation and production. FLEISCHHAUER
+then drew a distinction between the long term, when many things would be
+available and connected in the ways that GIFFORD described, and the short
+term, in which AM not only has wrestled with the issue of what is the
+best course to pursue but also has faced a variety of technical
+challenges.
+
+FLEISCHHAUER remarked AM's endeavors to deal with a wide range of library
+formats, such as motion picture collections, sound-recording collections,
+and pictorial collections of various sorts, especially collections of
+photographs. In the course of these efforts, AM kept coming back to
+textual materials--manuscripts or rare printed matter, bound materials,
+etc. Text posed the greatest conversion challenge of all. Thus, the
+genesis of the Workshop, which reflects the problems faced by AM. These
+problems include physical problems. For example, those in the library
+and archive business deal with collections made up of fragile and rare
+manuscript items, bound materials, especially the notoriously brittle
+bound materials of the late nineteenth century. These are precious
+cultural artifacts, however, as well as interesting sources of
+information, and LC desires to retain and conserve them. AM needs to
+handle things without damaging them. Guillotining a book to run it
+through a sheet feeder must be avoided at all costs.
+
+Beyond physical problems, issues pertaining to quality arose. For
+example, the desire to provide users with a searchable text is affected
+by the question of acceptable level of accuracy. One hundred percent
+accuracy is tremendously expensive. On the other hand, the output of
+optical character recognition (OCR) can be tremendously inaccurate.
+Although AM has attempted to find a middle ground, uncertainty persists
+as to whether or not it has discovered the right solution.
+
+Questions of quality arose concerning images as well. FLEISCHHAUER
+contrasted the extremely high level of quality of the digital images in
+the Cornell Xerox Project with AM's efforts to provide a browse-quality
+or access-quality image, as opposed to an archival or preservation image.
+FLEISCHHAUER therefore welcomed the opportunity to compare notes.
+
+FLEISCHHAUER observed in passing that conversations he had had about
+networks have begun to signal that for various forms of media a
+determination may be made that there is a browse-quality item, or a
+distribution-and-access-quality item that may coexist in some systems
+with a higher quality archival item that would be inconvenient to send
+through the network because of its size. FLEISCHHAUER referred, of
+course, to images more than to searchable text.
+
+As AM considered those questions, several conceptual issues arose: ought
+AM occasionally to reproduce materials entirely through an image set, at
+other times, entirely through a text set, and in some cases, a mix?
+There probably would be times when the historical authenticity of an
+artifact would require that its image be used. An image might be
+desirable as a recourse for users if one could not provide 100-percent
+accurate text. Again, AM wondered, as a practical matter, if a
+distinction could be drawn between rare printed matter that might exist
+in multiple collections--that is, in ten or fifteen libraries. In such
+cases, the need for perfect reproduction would be less than for unique
+items. Implicit in his remarks, FLEISCHHAUER conceded, was the admission
+that AM has been tilting strongly towards quantity and drawing back a
+little from perfect quality. That is, it seemed to AM that society would
+be better served if more things were distributed by LC--even if they were
+not quite perfect--than if fewer things, perfectly represented, were
+distributed. This was stated as a proposition to be tested, with
+responses to be gathered from users.
+
+In thinking about issues related to reproduction of materials and seeing
+other people engaged in parallel activities, AM deemed it useful to
+convene a conference. Hence, the Workshop. FLEISCHHAUER thereupon
+surveyed the several groups represented: 1) the world of images (image
+users and image makers); 2) the world of text and scholarship and, within
+this group, those concerned with language--FLEISCHHAUER confessed to finding
+delightful irony in the fact that some of the most advanced thinkers on
+computerized texts are those dealing with ancient Greek and Roman materials;
+3) the network world; and 4) the general world of library science, which
+includes people interested in preservation and cataloging.
+
+FLEISCHHAUER concluded his remarks with special thanks to the David and
+Lucile Packard Foundation for its support of the meeting, the American
+Memory group, the Office for Scholarly Programs, the National
+Demonstration Lab, and the Office of Special Events. He expressed the
+hope that David Woodley Packard might be able to attend, noting that
+Packard's work and the work of the foundation had sponsored a number of
+projects in the text area.
+
+ ******
+
+SESSION I. CONTENT IN A NEW FORM: WHO WILL USE IT AND WHAT WILL THEY DO?
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DALY * Acknowledgements * A new Latin authors disk * Effects of the new
+technology on previous methods of research *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Serving as moderator, James DALY acknowledged the generosity of all the
+presenters for giving of their time, counsel, and patience in planning
+the Workshop, as well as of members of the American Memory project and
+other Library of Congress staff, and the David and Lucile Packard
+Foundation and its executive director, Colburn S. Wilbur.
+
+DALY then recounted his visit in March to the Center for Electronic Texts
+in the Humanities (CETH) and the Department of Classics at Rutgers
+University, where an old friend, Lowell Edmunds, introduced him to the
+department's IBYCUS scholarly personal computer, and, in particular, the
+new Latin CD-ROM, containing, among other things, almost all classical
+Latin literary texts through A.D. 200. Packard Humanities Institute
+(PHI), Los Altos, California, released this disk late in 1991, with a
+nominal triennial licensing fee.
+
+Playing with the disk for an hour or so at Rutgers brought home to DALY
+at once the revolutionizing impact of the new technology on his previous
+methods of research. Had this disk been available two or three years
+earlier, DALY contended, when he was engaged in preparing a commentary on
+Book 10 of Virgil's Aeneid for Cambridge University Press, he would not
+have required a forty-eight-square-foot table on which to spread the
+numerous, most frequently consulted items, including some ten or twelve
+concordances to key Latin authors, an almost equal number of lexica to
+authors who lacked concordances, and where either lexica or concordances
+were lacking, numerous editions of authors antedating and postdating Virgil.
+
+Nor, when checking each of the average six to seven words contained in
+the Virgilian hexameter for its usage elsewhere in Virgil's works or
+other Latin authors, would DALY have had to maintain the laborious
+mechanical process of flipping through these concordances, lexica, and
+editions each time. Nor would he have had to frequent as often the
+Milton S. Eisenhower Library at the Johns Hopkins University to consult
+the Thesaurus Linguae Latinae. Instead of devoting countless hours, or
+the bulk of his research time, to gathering data concerning Virgil's use
+of words, DALY--now freed by PHI's Latin authors disk from the
+tyrannical, yet in some ways paradoxically happy scholarly drudgery--
+would have been able to devote that same bulk of time to analyzing and
+interpreting Virgilian verbal usage.
+
+Citing Theodore Brunner, Gregory Crane, Elli MYLONAS, and Avra MICHELSON,
+DALY argued that this reversal in his style of work, made possible by the
+new technology, would perhaps have resulted in better, more productive
+research. Indeed, even in the course of his browsing the Latin authors
+disk at Rutgers, its powerful search, retrieval, and highlighting
+capabilities suggested to him several new avenues of research into
+Virgil's use of sound effects. This anecdotal account, DALY maintained,
+may serve to illustrate in part the sudden and radical transformation
+being wrought in the ways scholars work.
+
+ ******
+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+MICHELSON * Elements related to scholarship and technology * Electronic
+texts within the context of broader trends within information technology
+and scholarly communication * Evaluation of the prospects for the use of
+electronic texts * Relationship of electronic texts to processes of
+scholarly communication in humanities research * New exchange formats
+created by scholars * Projects initiated to increase scholarly access to
+converted text * Trend toward making electronic resources available
+through research and education networks * Changes taking place in
+scholarly communication among humanities scholars * Network-mediated
+scholarship transforming traditional scholarly practices * Key
+information technology trends affecting the conduct of scholarly
+communication over the next decade * The trend toward end-user computing
+* The trend toward greater connectivity * Effects of these trends * Key
+transformations taking place * Summary of principal arguments *
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Avra MICHELSON, Archival Research and Evaluation Staff, National Archives
+and Records Administration (NARA), argued that establishing who will use
+electronic texts and what they will use them for involves a consideration
+of both information technology and scholarship trends. This
+consideration includes several elements related to scholarship and
+technology: 1) the key trends in information technology that are most
+relevant to scholarship; 2) the key trends in the use of currently
+available technology by scholars in the nonscientific community; and 3)
+the relationship between these two very distinct but interrelated trends.
+The investment in understanding this relationship being made by
+information providers, technologists, and public policy developers, as
+well as by scholars themselves, seems to be pervasive and growing,
+MICHELSON contended. She drew on collaborative work with Jeff Rothenberg
+on the scholarly use of technology.
+
+MICHELSON sought to place the phenomenon of electronic texts within the
+context of broader trends within information technology and scholarly
+communication. She argued that electronic texts are of most use to
+researchers to the extent that the researchers' working context (i.e.,
+their relevant bibliographic sources, collegial feedback, analytic tools,
+notes, drafts, etc.), along with their field's primary and secondary
+sources, also is accessible in electronic form and can be integrated in
+ways that are unique to the on-line environment.
+
+Evaluation of the prospects for the use of electronic texts includes two
+elements: 1) an examination of the ways in which researchers currently
+are using electronic texts along with other electronic resources, and 2)
+an analysis of key information technology trends that are affecting the
+long-term conduct of scholarly communication. MICHELSON limited her
+discussion of the use of electronic texts to the practices of humanists
+and noted that the scientific community was outside the panel's overview.
+
+MICHELSON examined the nature of the current relationship of electronic
+texts in particular, and electronic resources in general, to what she
+maintained were, essentially, five processes of scholarly communication
+in humanities research. Researchers 1) identify sources, 2) communicate
+with their colleagues, 3) interpret and analyze data, 4) disseminate
+their research findings, and 5) prepare curricula to instruct the next
+generation of scholars and students. This examination would produce a
+clearer understanding of the synergy among these five processes that
+fuels the tendency of the use of electronic resources for one process to
+stimulate its use for other processes of scholarly communication.
+
+For the first process of scholarly communication, the identification of
+sources, MICHELSON remarked the opportunity scholars now enjoy to
+supplement traditional word-of-mouth searches for sources among their
+colleagues with new forms of electronic searching. So, for example,
+instead of having to visit the library, researchers are able to explore
+descriptions of holdings in their offices. Furthermore, if their own
+institutions' holdings prove insufficient, scholars can access more than
+200 major American library catalogues over Internet, including the
+universities of California, Michigan, Pennsylvania, and Wisconsin.
+Direct access to the bibliographic databases offers intellectual
+empowerment to scholars by presenting a comprehensive means of browsing
+through libraries from their homes and offices at their convenience.
+
+The second process of communication involves communication among
+scholars. Beyond the most common methods of communication, scholars are
+using E-mail and a variety of new electronic communications formats
+derived from it for further academic interchange. E-mail exchanges are
+growing at an astonishing rate, reportedly 15 percent a month. They
+currently constitute approximately half the traffic on research and
+education networks. Moreover, the global spread of E-mail has been so
+rapid that it is now possible for American scholars to use it to
+communicate with colleagues in close to 140 other countries.
+
+Other new exchange formats created by scholars and operating on Internet
+include more than 700 conferences, with about 80 percent of these devoted
+to topics in the social sciences and humanities. The rate of growth of
+these scholarly electronic conferences also is astonishing. From l990 to
+l991, 200 new conferences were identified on Internet. From October 1991
+to June 1992, an additional 150 conferences in the social sciences and
+humanities were added to this directory of listings. Scholars have
+established conferences in virtually every field, within every different
+discipline. For example, there are currently close to 600 active social
+science and humanities conferences on topics such as art and
+architecture, ethnomusicology, folklore, Japanese culture, medical
+education, and gifted and talented education. The appeal to scholars of
+communicating through these conferences is that, unlike any other medium,
+electronic conferences today provide a forum for global communication
+with peers at the front end of the research process.
+
+Interpretation and analysis of sources constitutes the third process of
+scholarly communication that MICHELSON discussed in terms of texts and
+textual resources. The methods used to analyze sources fall somewhere on
+a continuum from quantitative analysis to qualitative analysis.
+Typically, evidence is culled and evaluated using methods drawn from both
+ends of this continuum. At one end, quantitative analysis involves the
+use of mathematical processes such as a count of frequencies and
+distributions of occurrences or, on a higher level, regression analysis.
+At the other end of the continuum, qualitative analysis typically
+involves nonmathematical processes oriented toward language
+interpretation or the building of theory. Aspects of this work involve
+the processing--either manual or computational--of large and sometimes
+massive amounts of textual sources, although the use of nontextual
+sources as evidence, such as photographs, sound recordings, film footage,
+and artifacts, is significant as well.
+
+Scholars have discovered that many of the methods of interpretation and
+analysis that are related to both quantitative and qualitative methods
+are processes that can be performed by computers. For example, computers
+can count. They can count brush strokes used in a Rembrandt painting or
+perform regression analysis for understanding cause and effect. By means
+of advanced technologies, computers can recognize patterns, analyze text,
+and model concepts. Furthermore, computers can complete these processes
+faster with more sources and with greater precision than scholars who
+must rely on manual interpretation of data. But if scholars are to use
+computers for these processes, source materials must be in a form
+amenable to computer-assisted analysis. For this reason many scholars,
+once they have identified the sources that are key to their research, are
+converting them to machine-readable form. Thus, a representative example
+of the numerous textual conversion projects organized by scholars around
+the world in recent years to support computational text analysis is the
+TLG, the Thesaurus Linguae Graecae. This project is devoted to
+converting the extant ancient texts of classical Greece. (Editor's note:
+according to the TLG Newsletter of May l992, TLG was in use in thirty-two
+different countries. This figure updates MICHELSON's previous count by one.)
+
+The scholars performing these conversions have been asked to recognize
+that the electronic sources they are converting for one use possess value
+for other research purposes as well. As a result, during the past few
+years, humanities scholars have initiated a number of projects to
+increase scholarly access to converted text. So, for example, the Text
+Encoding Initiative (TEI), about which more is said later in the program,
+was established as an effort by scholars to determine standard elements
+and methods for encoding machine-readable text for electronic exchange.
+In a second effort to facilitate the sharing of converted text, scholars
+have created a new institution, the Center for Electronic Texts in the
+Humanities (CETH). The center estimates that there are 8,000 series of
+source texts in the humanities that have been converted to
+machine-readable form worldwide. CETH is undertaking an international
+search for converted text in the humanities, compiling it into an
+electronic library, and preparing bibliographic descriptions of the
+sources for the Research Libraries Information Network's (RLIN)
+machine-readable data file. The library profession has begun to initiate
+large conversion projects as well, such as American Memory.
+
+While scholars have been making converted text available to one another,
+typically on disk or on CD-ROM, the clear trend is toward making these
+resources available through research and education networks. Thus, the
+American and French Research on the Treasury of the French Language
+(ARTFL) and the Dante Project are already available on Internet.
+MICHELSON summarized this section on interpretation and analysis by
+noting that: 1) increasing numbers of humanities scholars in the library
+community are recognizing the importance to the advancement of
+scholarship of retrospective conversion of source materials in the arts
+and humanities; and 2) there is a growing realization that making the
+sources available on research and education networks maximizes their
+usefulness for the analysis performed by humanities scholars.
+
+The fourth process of scholarly communication is dissemination of
+research findings, that is, publication. Scholars are using existing
+research and education networks to engineer a new type of publication:
+scholarly-controlled journals that are electronically produced and
+disseminated. Although such journals are still emerging as a
+communication format, their number has grown, from approximately twelve
+to thirty-six during the past year (July 1991 to June 1992). Most of
+these electronic scholarly journals are devoted to topics in the
+humanities. As with network conferences, scholarly enthusiasm for these
+electronic journals stems from the medium's unique ability to advance
+scholarship in a way that no other medium can do by supporting global
+feedback and interchange, practically in real time, early in the research
+process. Beyond scholarly journals, MICHELSON remarked the delivery of
+commercial full-text products, such as articles in professional journals,
+newsletters, magazines, wire services, and reference sources. These are
+being delivered via on-line local library catalogues, especially through
+CD-ROMs. Furthermore, according to MICHELSON, there is general optimism
+that the copyright and fees issues impeding the delivery of full text on
+existing research and education networks soon will be resolved.
+
+The final process of scholarly communication is curriculum development
+and instruction, and this involves the use of computer information
+technologies in two areas. The first is the development of
+computer-oriented instructional tools, which includes simulations,
+multimedia applications, and computer tools that are used to assist in
+the analysis of sources in the classroom, etc. The Perseus Project, a
+database that provides a multimedia curriculum on classical Greek
+civilization, is a good example of the way in which entire curricula are
+being recast using information technologies. It is anticipated that the
+current difficulty in exchanging electronically computer-based
+instructional software, which in turn makes it difficult for one scholar
+to build upon the work of others, will be resolved before too long.
+Stand-alone curricular applications that involve electronic text will be
+shareable through networks, reinforcing their significance as intellectual
+products as well as instructional tools.
+
+The second aspect of electronic learning involves the use of research and
+education networks for distance education programs. Such programs
+interactively link teachers with students in geographically scattered
+locations and rely on the availability of electronic instructional
+resources. Distance education programs are gaining wide appeal among
+state departments of education because of their demonstrated capacity to
+bring advanced specialized course work and an array of experts to many
+classrooms. A recent report found that at least 32 states operated at
+least one statewide network for education in 1991, with networks under
+development in many of the remaining states.
+
+MICHELSON summarized this section by noting two striking changes taking
+place in scholarly communication among humanities scholars. First is the
+extent to which electronic text in particular, and electronic resources
+in general, are being infused into each of the five processes described
+above. As mentioned earlier, there is a certain synergy at work here.
+The use of electronic resources for one process tends to stimulate its
+use for other processes, because the chief course of movement is toward a
+comprehensive on-line working context for humanities scholars that
+includes on-line availability of key bibliographies, scholarly feedback,
+sources, analytical tools, and publications. MICHELSON noted further
+that the movement toward a comprehensive on-line working context for
+humanities scholars is not new. In fact, it has been underway for more
+than forty years in the humanities, since Father Roberto Busa began
+developing an electronic concordance of the works of Saint Thomas Aquinas
+in 1949. What we are witnessing today, MICHELSON contended, is not the
+beginning of this on-line transition but, for at least some humanities
+scholars, the turning point in the transition from a print to an
+electronic working context. Coinciding with the on-line transition, the
+second striking change is the extent to which research and education
+networks are becoming the new medium of scholarly communication. The
+existing Internet and the pending National Education and Research Network
+(NREN) represent the new meeting ground where scholars are going for
+bibliographic information, scholarly dialogue and feedback, the most
+current publications in their field, and high-level educational
+offerings. Traditional scholarly practices are undergoing tremendous
+transformations as a result of the emergence and growing prominence of
+what is called network-mediated scholarship.
+
+MICHELSON next turned to the second element of the framework she proposed
+at the outset of her talk for evaluating the prospects for electronic
+text, namely the key information technology trends affecting the conduct
+of scholarly communication over the next decade: 1) end-user computing
+and 2) connectivity.
+
+End-user computing means that the person touching the keyboard, or
+performing computations, is the same as the person who initiates or
+consumes the computation. The emergence of personal computers, along
+with a host of other forces, such as ubiquitous computing, advances in
+interface design, and the on-line transition, is prompting the consumers
+of computation to do their own computing, and is thus rendering obsolete
+the traditional distinction between end users and ultimate users.
+
+The trend toward end-user computing is significant to consideration of
+the prospects for electronic texts because it means that researchers are
+becoming more adept at doing their own computations and, thus, more
+competent in the use of electronic media. By avoiding programmer
+intermediaries, computation is becoming central to the researcher's
+thought process. This direct involvement in computing is changing the
+researcher's perspective on the nature of research itself, that is, the
+kinds of questions that can be posed, the analytical methodologies that
+can be used, the types and amount of sources that are appropriate for
+analyses, and the form in which findings are presented. The trend toward
+end-user computing means that, increasingly, electronic media and
+computation are being infused into all processes of humanities
+scholarship, inspiring remarkable transformations in scholarly
+communication.
+
+The trend toward greater connectivity suggests that researchers are using
+computation increasingly in network environments. Connectivity is
+important to scholarship because it erases the distance that separates
+students from teachers and scholars from their colleagues, while allowing
+users to access remote databases, share information in many different
+media, connect to their working context wherever they are, and
+collaborate in all phases of research.
+
+The combination of the trend toward end-user computing and the trend
+toward connectivity suggests that the scholarly use of electronic
+resources, already evident among some researchers, will soon become an
+established feature of scholarship. The effects of these trends, along
+with ongoing changes in scholarly practices, point to a future in which
+humanities researchers will use computation and electronic communication
+to help them formulate ideas, access sources, perform research,
+collaborate with colleagues, seek peer review, publish and disseminate
+results, and engage in many other professional and educational activities.
+
+In summary, MICHELSON emphasized four points: 1) A portion of humanities
+scholars already consider electronic texts the preferred format for
+analysis and dissemination. 2) Scholars are using these electronic
+texts, in conjunction with other electronic resources, in all the
+processes of scholarly communication. 3) The humanities scholars'
+working context is in the process of changing from print technology to
+electronic technology, in many ways mirroring transformations that have
+occurred or are occurring within the scientific community. 4) These
+changes are occurring in conjunction with the development of a new
+communication medium: research and education networks that are
+characterized by their capacity to advance scholarship in a wholly unique
+way.
+
+MICHELSON also reiterated her three principal arguments: l) Electronic
+texts are best understood in terms of the relationship to other
+electronic resources and the growing prominence of network-mediated
+scholarship. 2) The prospects for electronic texts lie in their capacity
+to be integrated into the on-line network of electronic resources that
+comprise the new working context for scholars. 3) Retrospective conversion
+of portions of the scholarly record should be a key strategy as information
+providers respond to changes in scholarly communication practices.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+VECCIA * AM's evaluation project and public users of electronic resources
+* AM and its design * Site selection and evaluating the Macintosh
+implementation of AM * Characteristics of the six public libraries
+selected * Characteristics of AM's users in these libraries * Principal
+ways AM is being used *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Susan VECCIA, team leader, and Joanne FREEMAN, associate coordinator,
+American Memory, Library of Congress, gave a joint presentation. First,
+by way of introduction, VECCIA explained her and FREEMAN's roles in
+American Memory (AM). Serving principally as an observer, VECCIA has
+assisted with the evaluation project of AM, placing AM collections in a
+variety of different sites around the country and helping to organize and
+implement that project. FREEMAN has been an associate coordinator of AM
+and has been involved principally with the interpretative materials,
+preparing some of the electronic exhibits and printed historical
+information that accompanies AM and that is requested by users. VECCIA
+and FREEMAN shared anecdotal observations concerning AM with public users
+of electronic resources. Notwithstanding a fairly structured evaluation
+in progress, both VECCIA and FREEMAN chose not to report on specifics in
+terms of numbers, etc., because they felt it was too early in the
+evaluation project to do so.
+
+AM is an electronic archive of primary source materials from the Library
+of Congress, selected collections representing a variety of formats--
+photographs, graphic arts, recorded sound, motion pictures, broadsides,
+and soon, pamphlets and books. In terms of the design of this system,
+the interpretative exhibits have been kept separate from the primary
+resources, with good reason. Accompanying this collection are printed
+documentation and user guides, as well as guides that FREEMAN prepared for
+teachers so that they may begin using the content of the system at once.
+
+VECCIA described the evaluation project before talking about the public
+users of AM, limiting her remarks to public libraries, because FREEMAN
+would talk more specifically about schools from kindergarten to twelfth
+grade (K-12). Having started in spring 1991, the evaluation currently
+involves testing of the Macintosh implementation of AM. Since the
+primary goal of this evaluation is to determine the most appropriate
+audience or audiences for AM, very different sites were selected. This
+makes evaluation difficult because of the varying degrees of technology
+literacy among the sites. AM is situated in forty-four locations, of
+which six are public libraries and sixteen are schools. Represented
+among the schools are elementary, junior high, and high schools.
+District offices also are involved in the evaluation, which will
+conclude in summer 1993.
+
+VECCIA focused the remainder of her talk on the six public libraries, one
+of which doubles as a state library. They represent a range of
+geographic areas and a range of demographic characteristics. For
+example, three are located in urban settings, two in rural settings, and
+one in a suburban setting. A range of technical expertise is to be found
+among these facilities as well. For example, one is an "Apple library of
+the future," while two others are rural one-room libraries--in one, AM
+sits at the front desk next to a tractor manual.
+
+All public libraries have been extremely enthusiastic, supportive, and
+appreciative of the work that AM has been doing. VECCIA characterized
+various users: Most users in public libraries describe themselves as
+general readers; of the students who use AM in the public libraries,
+those in fourth grade and above seem most interested. Public libraries
+in rural sites tend to attract retired people, who have been highly
+receptive to AM. Users tend to fall into two additional categories:
+people interested in the content and historical connotations of these
+primary resources, and those fascinated by the technology. The format
+receiving the most comments has been motion pictures. The adult users in
+public libraries are more comfortable with IBM computers, whereas young
+people seem comfortable with either IBM or Macintosh, although most of
+them seem to come from a Macintosh background. This same tendency is
+found in the schools.
+
+What kinds of things do users do with AM? In a public library there are
+two main goals or ways that AM is being used: as an individual learning
+tool, and as a leisure activity. Adult learning was one area that VECCIA
+would highlight as a possible application for a tool such as AM. She
+described a patron of a rural public library who comes in every day on
+his lunch hour and literally reads AM, methodically going through the
+collection image by image. At the end of his hour he makes an electronic
+bookmark, puts it in his pocket, and returns to work. The next day he
+comes in and resumes where he left off. Interestingly, this man had
+never been in the library before he used AM. In another small, rural
+library, the coordinator reports that AM is a popular activity for some
+of the older, retired people in the community, who ordinarily would not
+use "those things,"--computers. Another example of adult learning in
+public libraries is book groups, one of which, in particular, is using AM
+as part of its reading on industrialization, integration, and urbanization
+in the early 1900s.
+
+One library reports that a family is using AM to help educate their
+children. In another instance, individuals from a local museum came in
+to use AM to prepare an exhibit on toys of the past. These two examples
+emphasize the mission of the public library as a cultural institution,
+reaching out to people who do not have the same resources available to
+those who live in a metropolitan area or have access to a major library.
+One rural library reports that junior high school students in large
+numbers came in one afternoon to use AM for entertainment. A number of
+public libraries reported great interest among postcard collectors in the
+Detroit collection, which was essentially a collection of images used on
+postcards around the turn of the century. Train buffs are similarly
+interested because that was a time of great interest in railroading.
+People, it was found, relate to things that they know of firsthand. For
+example, in both rural public libraries where AM was made available,
+observers reported that the older people with personal remembrances of
+the turn of the century were gravitating to the Detroit collection.
+These examples served to underscore MICHELSON's observation re the
+integration of electronic tools and ideas--that people learn best when
+the material relates to something they know.
+
+VECCIA made the final point that in many cases AM serves as a
+public-relations tool for the public libraries that are testing it. In
+one case, AM is being used as a vehicle to secure additional funding for
+the library. In another case, AM has served as an inspiration to the
+staff of a major local public library in the South to think about ways to
+make its own collection of photographs more accessible to the public.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+FREEMAN * AM and archival electronic resources in a school environment *
+Questions concerning context * Questions concerning the electronic format
+itself * Computer anxiety * Access and availability of the system *
+Hardware * Strengths gained through the use of archival resources in
+schools *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Reiterating an observation made by VECCIA, that AM is an archival
+resource made up of primary materials with very little interpretation,
+FREEMAN stated that the project has attempted to bridge the gap between
+these bare primary materials and a school environment, and in that cause
+has created guided introductions to AM collections. Loud demand from the
+educational community, chiefly from teachers working with the upper
+grades of elementary school through high school, greeted the announcement
+that AM would be tested around the country.
+
+FREEMAN reported not only on what was learned about AM in a school
+environment, but also on several universal questions that were raised
+concerning archival electronic resources in schools. She discussed
+several strengths of this type of material in a school environment as
+opposed to a highly structured resource that offers a limited number of
+paths to follow.
+
+FREEMAN first raised several questions about using AM in a school
+environment. There is often some difficulty in developing a sense of
+what the system contains. Many students sit down at a computer resource
+and assume that, because AM comes from the Library of Congress, all of
+American history is now at their fingertips. As a result of that sort of
+mistaken judgment, some students are known to conclude that AM contains
+nothing of use to them when they look for one or two things and do not
+find them. It is difficult to discover that middle ground where one has
+a sense of what the system contains. Some students grope toward the idea
+of an archive, a new idea to them, since they have not previously
+experienced what it means to have access to a vast body of somewhat
+random information.
+
+Other questions raised by FREEMAN concerned the electronic format itself.
+For instance, in a school environment it is often difficult both for
+teachers and students to gain a sense of what it is they are viewing.
+They understand that it is a visual image, but they do not necessarily
+know that it is a postcard from the turn of the century, a panoramic
+photograph, or even machine-readable text of an eighteenth-century
+broadside, a twentieth-century printed book, or a nineteenth-century
+diary. That distinction is often difficult for people in a school
+environment to grasp. Because of that, it occasionally becomes difficult
+to draw conclusions from what one is viewing.
+
+FREEMAN also noted the obvious fear of the computer, which constitutes a
+difficulty in using an electronic resource. Though students in general
+did not suffer from this anxiety, several older students feared that they
+were computer-illiterate, an assumption that became self-fulfilling when
+they searched for something but failed to find it. FREEMAN said she
+believed that some teachers also fear computer resources, because they
+believe they lack complete control. FREEMAN related the example of
+teachers shooing away students because it was not their time to use the
+system. This was a case in which the situation had to be extremely
+structured so that the teachers would not feel that they had lost their
+grasp on what the system contained.
+
+A final question raised by FREEMAN concerned access and availability of
+the system. She noted the occasional existence of a gap in communication
+between school librarians and teachers. Often AM sits in a school
+library and the librarian is the person responsible for monitoring the
+system. Teachers do not always take into their world new library
+resources about which the librarian is excited. Indeed, at the sites
+where AM had been used most effectively within a library, the librarian
+was required to go to specific teachers and instruct them in its use. As
+a result, several AM sites will have in-service sessions over a summer,
+in the hope that perhaps, with a more individualized link, teachers will
+be more likely to use the resource.
+
+A related issue in the school context concerned the number of
+workstations available at any one location. Centralization of equipment
+at the district level, with teachers invited to download things and walk
+away with them, proved unsuccessful because the hours these offices were
+open were also school hours.
+
+Another issue was hardware. As VECCIA observed, a range of sites exists,
+some technologically advanced and others essentially acquiring their
+first computer for the primary purpose of using it in conjunction with
+AM's testing. Users at technologically sophisticated sites want even
+more sophisticated hardware, so that they can perform even more
+sophisticated tasks with the materials in AM. But once they acquire a
+newer piece of hardware, they must learn how to use that also; at an
+unsophisticated site it takes an extremely long time simply to become
+accustomed to the computer, not to mention the program offered with the
+computer. All of these small issues raise one large question, namely,
+are systems like AM truly rewarding in a school environment, or do they
+simply act as innovative toys that do little more than spark interest?
+
+FREEMAN contended that the evaluation project has revealed several strengths
+that were gained through the use of archival resources in schools, including:
+
+ * Psychic rewards from using AM as a vast, rich database, with
+ teachers assigning various projects to students--oral presentations,
+ written reports, a documentary, a turn-of-the-century newspaper--
+ projects that start with the materials in AM but are completed using
+ other resources; AM thus is used as a research tool in conjunction
+ with other electronic resources, as well as with books and items in
+ the library where the system is set up.
+
+ * Students are acquiring computer literacy in a humanities context.
+
+ * This sort of system is overcoming the isolation between disciplines
+ that often exists in schools. For example, many English teachers are
+ requiring their students to write papers on historical topics
+ represented in AM. Numerous teachers have reported that their
+ students are learning critical thinking skills using the system.
+
+ * On a broader level, AM is introducing primary materials, not only
+ to students but also to teachers, in an environment where often
+ simply none exist--an exciting thing for the students because it
+ helps them learn to conduct research, to interpret, and to draw
+ their own conclusions. In learning to conduct research and what it
+ means, students are motivated to seek knowledge. That relates to
+ another positive outcome--a high level of personal involvement of
+ students with the materials in this system and greater motivation to
+ conduct their own research and draw their own conclusions.
+
+ * Perhaps the most ironic strength of these kinds of archival
+ electronic resources is that many of the teachers AM interviewed
+ were desperate, it is no exaggeration to say, not only for primary
+ materials but for unstructured primary materials. These would, they
+ thought, foster personally motivated research, exploration, and
+ excitement in their students. Indeed, these materials have done
+ just that. Ironically, however, this lack of structure produces
+ some of the confusion to which the newness of these kinds of
+ resources may also contribute. The key to effective use of archival
+ products in a school environment is a clear, effective introduction
+ to the system and to what it contains.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Nothing known, quantitatively, about the number of
+humanities scholars who must see the original versus those who would
+settle for an edited transcript, or about the ways in which humanities
+scholars are using information technology * Firm conclusions concerning
+the manner and extent of the use of supporting materials in print
+provided by AM to await completion of evaluative study * A listener's
+reflections on additional applications of electronic texts * Role of
+electronic resources in teaching elementary research skills to students *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+During the discussion that followed the presentations by MICHELSON,
+VECCIA, and FREEMAN, additional points emerged.
+
+LESK asked if MICHELSON could give any quantitative estimate of the
+number of humanities scholars who must see or want to see the original,
+or the best possible version of the material, versus those who typically
+would settle for an edited transcript. While unable to provide a figure,
+she offered her impressions as an archivist who has done some reference
+work and has discussed this issue with other archivists who perform
+reference, that those who use archives and those who use primary sources
+for what would be considered very high-level scholarly research, as
+opposed to, say, undergraduate papers, were few in number, especially
+given the public interest in using primary sources to conduct
+genealogical or avocational research and the kind of professional
+research done by people in private industry or the federal government.
+More important in MICHELSON's view was that, quantitatively, nothing is
+known about the ways in which, for example, humanities scholars are using
+information technology. No studies exist to offer guidance in creating
+strategies. The most recent study was conducted in 1985 by the American
+Council of Learned Societies (ACLS), and what it showed was that 50
+percent of humanities scholars at that time were using computers. That
+constitutes the extent of our knowledge.
+
+Concerning AM's strategy for orienting people toward the scope of
+electronic resources, FREEMAN could offer no hard conclusions at this
+point, because she and her colleagues were still waiting to see,
+particularly in the schools, what has been made of their efforts. Within
+the system, however, AM has provided what are called electronic exhibits-
+-such as introductions to time periods and materials--and these are
+intended to offer a student user a sense of what a broadside is and what
+it might tell her or him. But FREEMAN conceded that the project staff
+would have to talk with students next year, after teachers have had a
+summer to use the materials, and attempt to discover what the students
+were learning from the materials. In addition, FREEMAN described
+supporting materials in print provided by AM at the request of local
+teachers during a meeting held at LC. These included time lines,
+bibliographies, and other materials that could be reproduced on a
+photocopier in a classroom. Teachers could walk away with and use these,
+and in this way gain a better understanding of the contents. But again,
+reaching firm conclusions concerning the manner and extent of their use
+would have to wait until next year.
+
+As to the changes she saw occurring at the National Archives and Records
+Administration (NARA) as a result of the increasing emphasis on
+technology in scholarly research, MICHELSON stated that NARA at this
+point was absorbing the report by her and Jeff Rothenberg addressing
+strategies for the archival profession in general, although not for the
+National Archives specifically. NARA is just beginning to establish its
+role and what it can do. In terms of changes and initiatives that NARA
+can take, no clear response could be given at this time.
+
+GREENFIELD remarked two trends mentioned in the session. Reflecting on
+DALY's opening comments on how he could have used a Latin collection of
+text in an electronic form, he said that at first he thought most scholars
+would be unwilling to do that. But as he thought of that in terms of the
+original meaning of research--that is, having already mastered these texts,
+researching them for critical and comparative purposes--for the first time,
+the electronic format made a lot of sense. GREENFIELD could envision
+growing numbers of scholars learning the new technologies for that very
+aspect of their scholarship and for convenience's sake.
+
+Listening to VECCIA and FREEMAN, GREENFIELD thought of an additional
+application of electronic texts. He realized that AM could be used as a
+guide to lead someone to original sources. Students cannot be expected
+to have mastered these sources, things they have never known about
+before. Thus, AM is leading them, in theory, to a vast body of
+information and giving them a superficial overview of it, enabling them
+to select parts of it. GREENFIELD asked if any evidence exists that this
+resource will indeed teach the new user, the K-12 students, how to do
+research. Scholars already know how to do research and are applying
+these new tools. But he wondered why students would go beyond picking
+out things that were most exciting to them.
+
+FREEMAN conceded the correctness of GREENFIELD's observation as applied
+to a school environment. The risk is that a student would sit down at a
+system, play with it, find some things of interest, and then walk away.
+But in the relatively controlled situation of a school library, much will
+depend on the instructions a teacher or a librarian gives a student. She
+viewed the situation not as one of fine-tuning research skills but of
+involving students at a personal level in understanding and researching
+things. Given the guidance one can receive at school, it then becomes
+possible to teach elementary research skills to students, which in fact
+one particular librarian said she was teaching her fifth graders.
+FREEMAN concluded that introducing the idea of following one's own path
+of inquiry, which is essentially what research entails, involves more
+than teaching specific skills. To these comments VECCIA added the
+observation that the individual teacher and the use of a creative
+resource, rather than AM itself, seemed to make the key difference.
+Some schools and some teachers are making excellent use of the nature
+of critical thinking and teaching skills, she said.
+
+Concurring with these remarks, DALY closed the session with the thought that
+the more that producers produced for teachers and for scholars to use with
+their students, the more successful their electronic products would prove.
+
+ ******
+
+SESSION II. SHOW AND TELL
+
+Jacqueline HESS, director, National Demonstration Laboratory, served as
+moderator of the "show-and-tell" session. She noted that a
+question-and-answer period would follow each presentation.
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+MYLONAS * Overview and content of Perseus * Perseus' primary materials
+exist in a system-independent, archival form * A concession * Textual
+aspects of Perseus * Tools to use with the Greek text * Prepared indices
+and full-text searches in Perseus * English-Greek word search leads to
+close study of words and concepts * Navigating Perseus by tracing down
+indices * Using the iconography to perform research *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Elli MYLONAS, managing editor, Perseus Project, Harvard University, first
+gave an overview of Perseus, a large, collaborative effort based at
+Harvard University but with contributors and collaborators located at
+numerous universities and colleges in the United States (e.g., Bowdoin,
+Maryland, Pomona, Chicago, Virginia). Funded primarily by the
+Annenberg/CPB Project, with additional funding from Apple, Harvard, and
+the Packard Humanities Institute, among others, Perseus is a multimedia,
+hypertextual database for teaching and research on classical Greek
+civilization, which was released in February 1992 in version 1.0 and
+distributed by Yale University Press.
+
+Consisting entirely of primary materials, Perseus includes ancient Greek
+texts and translations of those texts; catalog entries--that is, museum
+catalog entries, not library catalog entries--on vases, sites, coins,
+sculpture, and archaeological objects; maps; and a dictionary, among
+other sources. The number of objects and the objects for which catalog
+entries exist are accompanied by thousands of color images, which
+constitute a major feature of the database. Perseus contains
+approximately 30 megabytes of text, an amount that will double in
+subsequent versions. In addition to these primary materials, the Perseus
+Project has been building tools for using them, making access and
+navigation easier, the goal being to build part of the electronic
+environment discussed earlier in the morning in which students or
+scholars can work with their sources.
+
+The demonstration of Perseus will show only a fraction of the real work
+that has gone into it, because the project had to face the dilemma of
+what to enter when putting something into machine-readable form: should
+one aim for very high quality or make concessions in order to get the
+material in? Since Perseus decided to opt for very high quality, all of
+its primary materials exist in a system-independent--insofar as it is
+possible to be system-independent--archival form. Deciding what that
+archival form would be and attaining it required much work and thought.
+For example, all the texts are marked up in SGML, which will be made
+compatible with the guidelines of the Text Encoding Initiative (TEI) when
+they are issued.
+
+Drawings are postscript files, not meeting international standards, but
+at least designed to go across platforms. Images, or rather the real
+archival forms, consist of the best available slides, which are being
+digitized. Much of the catalog material exists in database form--a form
+that the average user could use, manipulate, and display on a personal
+computer, but only at great cost. Thus, this is where the concession
+comes in: All of this rich, well-marked-up information is stripped of
+much of its content; the images are converted into bit-maps and the text
+into small formatted chunks. All this information can then be imported
+into HyperCard and run on a mid-range Macintosh, which is what Perseus
+users have. This fact has made it possible for Perseus to attain wide
+use fairly rapidly. Without those archival forms the HyperCard version
+being demonstrated could not be made easily, and the project could not
+have the potential to move to other forms and machines and software as
+they appear, none of which information is in Perseus on the CD.
+
+Of the numerous multimedia aspects of Perseus, MYLONAS focused on the
+textual. Part of what makes Perseus such a pleasure to use, MYLONAS
+said, is this effort at seamless integration and the ability to move
+around both visual and textual material. Perseus also made the decision
+not to attempt to interpret its material any more than one interprets by
+selecting. But, MYLONAS emphasized, Perseus is not courseware: No
+syllabus exists. There is no effort to define how one teaches a topic
+using Perseus, although the project may eventually collect papers by
+people who have used it to teach. Rather, Perseus aims to provide
+primary material in a kind of electronic library, an electronic sandbox,
+so to say, in which students and scholars who are working on this
+material can explore by themselves. With that, MYLONAS demonstrated
+Perseus, beginning with the Perseus gateway, the first thing one sees
+upon opening Perseus--an effort in part to solve the contextualizing
+problem--which tells the user what the system contains.
+
+MYLONAS demonstrated only a very small portion, beginning with primary
+texts and running off the CD-ROM. Having selected Aeschylus' Prometheus
+Bound, which was viewable in Greek and English pretty much in the same
+segments together, MYLONAS demonstrated tools to use with the Greek text,
+something not possible with a book: looking up the dictionary entry form
+of an unfamiliar word in Greek after subjecting it to Perseus'
+morphological analysis for all the texts. After finding out about a
+word, a user may then decide to see if it is used anywhere else in Greek.
+Because vast amounts of indexing support all of the primary material, one
+can find out where else all forms of a particular Greek word appear--
+often not a trivial matter because Greek is highly inflected. Further,
+since the story of Prometheus has to do with the origins of sacrifice, a
+user may wish to study and explore sacrifice in Greek literature; by
+typing sacrifice into a small window, a user goes to the English-Greek
+word list--something one cannot do without the computer (Perseus has
+indexed the definitions of its dictionary)--the string sacrifice appears
+in the definitions of these sixty-five words. One may then find out
+where any of those words is used in the work(s) of a particular author.
+The English definitions are not lemmatized.
+
+All of the indices driving this kind of usage were originally devised for
+speed, MYLONAS observed; in other words, all that kind of information--
+all forms of all words, where they exist, the dictionary form they belong
+to--were collected into databases, which will expedite searching. Then
+it was discovered that one can do things searching in these databases
+that could not be done searching in the full texts. Thus, although there
+are full-text searches in Perseus, much of the work is done behind the
+scenes, using prepared indices. Re the indexing that is done behind the
+scenes, MYLONAS pointed out that without the SGML forms of the text, it
+could not be done effectively. Much of this indexing is based on the
+structures that are made explicit by the SGML tagging.
+
+It was found that one of the things many of Perseus' non-Greek-reading
+users do is start from the dictionary and then move into the close study
+of words and concepts via this kind of English-Greek word search, by which
+means they might select a concept. This exercise has been assigned to
+students in core courses at Harvard--to study a concept by looking for the
+English word in the dictionary, finding the Greek words, and then finding
+the words in the Greek but, of course, reading across in the English.
+That tells them a great deal about what a translation means as well.
+
+Should one also wish to see images that have to do with sacrifice, that
+person would go to the object key word search, which allows one to
+perform a similar kind of index retrieval on the database of
+archaeological objects. Without words, pictures are useless; Perseus has
+not reached the point where it can do much with images that are not
+cataloged. Thus, although it is possible in Perseus with text and images
+to navigate by knowing where one wants to end up--for example, a
+red-figure vase from the Boston Museum of Fine Arts--one can perform this
+kind of navigation very easily by tracing down indices. MYLONAS
+illustrated several generic scenes of sacrifice on vases. The features
+demonstrated derived from Perseus 1.0; version 2.0 will implement even
+better means of retrieval.
+
+MYLONAS closed by looking at one of the pictures and noting again that
+one can do a great deal of research using the iconography as well as the
+texts. For instance, students in a core course at Harvard this year were
+highly interested in Greek concepts of foreigners and representations of
+non-Greeks. So they performed a great deal of research, both with texts
+(e.g., Herodotus) and with iconography on vases and coins, on how the
+Greeks portrayed non-Greeks. At the same time, art historians who study
+iconography were also interested, and were able to use this material.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Indexing and searchability of all English words in Perseus *
+Several features of Perseus 1.0 * Several levels of customization
+possible * Perseus used for general education * Perseus' effects on
+education * Contextual information in Perseus * Main challenge and
+emphasis of Perseus *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Several points emerged in the discussion that followed MYLONAS's presentation.
+
+Although MYLONAS had not demonstrated Perseus' ability to cross-search
+documents, she confirmed that all English words in Perseus are indexed
+and can be searched. So, for example, sacrifice could have been searched
+in all texts, the historical essay, and all the catalogue entries with
+their descriptions--in short, in all of Perseus.
+
+Boolean logic is not in Perseus 1.0 but will be added to the next
+version, although an effort is being made not to restrict Perseus to a
+database in which one just performs searching, Boolean or otherwise. It
+is possible to move laterally through the documents by selecting a word
+one is interested in and selecting an area of information one is
+interested in and trying to look that word up in that area.
+
+Since Perseus was developed in HyperCard, several levels of customization
+are possible. Simple authoring tools exist that allow one to create
+annotated paths through the information, which are useful for note-taking
+and for guided tours for teaching purposes and for expository writing.
+With a little more ingenuity it is possible to begin to add or substitute
+material in Perseus.
+
+Perseus has not been used so much for classics education as for general
+education, where it seemed to have an impact on the students in the core
+course at Harvard (a general required course that students must take in
+certain areas). Students were able to use primary material much more.
+
+The Perseus Project has an evaluation team at the University of Maryland
+that has been documenting Perseus' effects on education. Perseus is very
+popular, and anecdotal evidence indicates that it is having an effect at
+places other than Harvard, for example, test sites at Ball State
+University, Drury College, and numerous small places where opportunities
+to use vast amounts of primary data may not exist. One documented effect
+is that archaeological, anthropological, and philological research is
+being done by the same person instead of by three different people.
+
+The contextual information in Perseus includes an overview essay, a
+fairly linear historical essay on the fifth century B.C. that provides
+links into the primary material (e.g., Herodotus, Thucydides, and
+Plutarch), via small gray underscoring (on the screen) of linked
+passages. These are handmade links into other material.
+
+To different extents, most of the production work was done at Harvard,
+where the people and the equipment are located. Much of the
+collaborative activity involved data collection and structuring, because
+the main challenge and the emphasis of Perseus is the gathering of
+primary material, that is, building a useful environment for studying
+classical Greece, collecting data, and making it useful.
+Systems-building is definitely not the main concern. Thus, much of the
+work has involved writing essays, collecting information, rewriting it,
+and tagging it. That can be done off site. The creative link for the
+overview essay as well as for both systems and data was collaborative,
+and was forged via E-mail and paper mail with professors at Pomona and
+Bowdoin.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CALALUCA * PLD's principal focus and contribution to scholarship *
+Various questions preparatory to beginning the project * Basis for
+project * Basic rule in converting PLD * Concerning the images in PLD *
+Running PLD under a variety of retrieval software * Encoding the
+database a hard-fought issue * Various features demonstrated * Importance
+of user documentation * Limitations of the CD-ROM version *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Eric CALALUCA, vice president, Chadwyck-Healey, Inc., demonstrated a
+software interpretation of the Patrologia Latina Database (PLD). PLD's
+principal focus from the beginning of the project about three-and-a-half
+years ago was on converting Migne's Latin series, and in the end,
+CALALUCA suggested, conversion of the text will be the major contribution
+to scholarship. CALALUCA stressed that, as possibly the only private
+publishing organization at the Workshop, Chadwyck-Healey had sought no
+federal funds or national foundation support before embarking upon the
+project, but instead had relied upon a great deal of homework and
+marketing to accomplish the task of conversion.
+
+Ever since the possibilities of computer-searching have emerged, scholars
+in the field of late ancient and early medieval studies (philosophers,
+theologians, classicists, and those studying the history of natural law
+and the history of the legal development of Western civilization) have
+been longing for a fully searchable version of Western literature, for
+example, all the texts of Augustine and Bernard of Clairvaux and
+Boethius, not to mention all the secondary and tertiary authors.
+
+Various questions arose, CALALUCA said. Should one convert Migne?
+Should the database be encoded? Is it necessary to do that? How should
+it be delivered? What about CD-ROM? Since this is a transitional
+medium, why even bother to create software to run on a CD-ROM? Since
+everybody knows people will be networking information, why go to the
+trouble--which is far greater with CD-ROM than with the production of
+magnetic data? Finally, how does one make the data available? Can many
+of the hurdles to using electronic information that some publishers have
+imposed upon databases be eliminated?
+
+The PLD project was based on the principle that computer-searching of
+texts is most effective when it is done with a large database. Because
+PLD represented a collection that serves so many disciplines across so
+many periods, it was irresistible.
+
+The basic rule in converting PLD was to do no harm, to avoid the sins of
+intrusion in such a database: no introduction of newer editions, no
+on-the-spot changes, no eradicating of all possible falsehoods from an
+edition. Thus, PLD is not the final act in electronic publishing for
+this discipline, but simply the beginning. The conversion of PLD has
+evoked numerous unanticipated questions: How will information be used?
+What about networking? Can the rights of a database be protected?
+Should one protect the rights of a database? How can it be made
+available?
+
+Those converting PLD also tried to avoid the sins of omission, that is,
+excluding portions of the collections or whole sections. What about the
+images? PLD is full of images, some are extremely pious
+nineteenth-century representations of the Fathers, while others contain
+highly interesting elements. The goal was to cover all the text of Migne
+(including notes, in Greek and in Hebrew, the latter of which, in
+particular, causes problems in creating a search structure), all the
+indices, and even the images, which are being scanned in separately
+searchable files.
+
+Several North American institutions that have placed acquisition requests
+for the PLD database have requested it in magnetic form without software,
+which means they are already running it without software, without
+anything demonstrated at the Workshop.
+
+What cannot practically be done is go back and reconvert and re-encode
+data, a time-consuming and extremely costly enterprise. CALALUCA sees
+PLD as a database that can, and should, be run under a variety of
+retrieval software. This will permit the widest possible searches.
+Consequently, the need to produce a CD-ROM of PLD, as well as to develop
+software that could handle some 1.3 gigabyte of heavily encoded text,
+developed out of conversations with collection development and reference
+librarians who wanted software both compassionate enough for the
+pedestrian but also capable of incorporating the most detailed
+lexicographical studies that a user desires to conduct. In the end, the
+encoding and conversion of the data will prove the most enduring
+testament to the value of the project.
+
+The encoding of the database was also a hard-fought issue: Did the
+database need to be encoded? Were there normative structures for encoding
+humanist texts? Should it be SGML? What about the TEI--will it last,
+will it prove useful? CALALUCA expressed some minor doubts as to whether
+a data bank can be fully TEI-conformant. Every effort can be made, but
+in the end to be TEI-conformant means to accept the need to make some
+firm encoding decisions that can, indeed, be disputed. The TEI points
+the publisher in a proper direction but does not presume to make all the
+decisions for him or her. Essentially, the goal of encoding was to
+eliminate, as much as possible, the hindrances to information-networking,
+so that if an institution acquires a database, everybody associated with
+the institution can have access to it.
+
+CALALUCA demonstrated a portion of Volume 160, because it had the most
+anomalies in it. The software was created by Electronic Book
+Technologies of Providence, RI, and is called Dynatext. The software
+works only with SGML-coded data.
+
+Viewing a table of contents on the screen, the audience saw how Dynatext
+treats each element as a book and attempts to simplify movement through a
+volume. Familiarity with the Patrologia in print (i.e., the text, its
+source, and the editions) will make the machine-readable versions highly
+useful. (Software with a Windows application was sought for PLD,
+CALALUCA said, because this was the main trend for scholarly use.)
+
+CALALUCA also demonstrated how a user can perform a variety of searches
+and quickly move to any part of a volume; the look-up screen provides
+some basic, simple word-searching.
+
+CALALUCA argued that one of the major difficulties is not the software.
+Rather, in creating a product that will be used by scholars representing
+a broad spectrum of computer sophistication, user documentation proves
+to be the most important service one can provide.
+
+CALALUCA next illustrated a truncated search under mysterium within ten
+words of virtus and how one would be able to find its contents throughout
+the entire database. He said that the exciting thing about PLD is that
+many of the applications in the retrieval software being written for it
+will exceed the capabilities of the software employed now for the CD-ROM
+version. The CD-ROM faces genuine limitations, in terms of speed and
+comprehensiveness, in the creation of a retrieval software to run it.
+CALALUCA said he hoped that individual scholars will download the data,
+if they wish, to their personal computers, and have ready access to
+important texts on a constant basis, which they will be able to use in
+their research and from which they might even be able to publish.
+
+(CALALUCA explained that the blue numbers represented Migne's column numbers,
+which are the standard scholarly references. Pulling up a note, he stated
+that these texts were heavily edited and the image files would appear simply
+as a note as well, so that one could quickly access an image.)
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+FLEISCHHAUER/ERWAY * Several problems with which AM is still wrestling *
+Various search and retrieval capabilities * Illustration of automatic
+stemming and a truncated search * AM's attempt to find ways to connect
+cataloging to the texts * AM's gravitation towards SGML * Striking a
+balance between quantity and quality * How AM furnishes users recourse to
+images * Conducting a search in a full-text environment * Macintosh and
+IBM prototypes of AM * Multimedia aspects of AM *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+A demonstration of American Memory by its coordinator, Carl FLEISCHHAUER,
+and Ricky ERWAY, associate coordinator, Library of Congress, concluded
+the morning session. Beginning with a collection of broadsides from the
+Continental Congress and the Constitutional Convention, the only text
+collection in a presentable form at the time of the Workshop, FLEISCHHAUER
+highlighted several of the problems with which AM is still wrestling.
+(In its final form, the disk will contain two collections, not only the
+broadsides but also the full text with illustrations of a set of
+approximately 300 African-American pamphlets from the period 1870 to 1910.)
+
+As FREEMAN had explained earlier, AM has attempted to use a small amount
+of interpretation to introduce collections. In the present case, the
+contractor, a company named Quick Source, in Silver Spring, MD., used
+software called Toolbook and put together a modestly interactive
+introduction to the collection. Like the two preceding speakers,
+FLEISCHHAUER argued that the real asset was the underlying collection.
+
+FLEISCHHAUER proceeded to describe various search and retrieval
+capabilities while ERWAY worked the computer. In this particular package
+the "go to" pull-down allowed the user in effect to jump out of Toolbook,
+where the interactive program was located, and enter the third-party
+software used by AM for this text collection, which is called Personal
+Librarian. This was the Windows version of Personal Librarian, a
+software application put together by a company in Rockville, Md.
+
+Since the broadsides came from the Revolutionary War period, a search was
+conducted using the words British or war, with the default operator reset
+as or. FLEISCHHAUER demonstrated both automatic stemming (which finds
+other forms of the same root) and a truncated search. One of Personal
+Librarian's strongest features, the relevance ranking, was represented by
+a chart that indicated how often words being sought appeared in
+documents, with the one receiving the most "hits" obtaining the highest
+score. The "hit list" that is supplied takes the relevance ranking into
+account, making the first hit, in effect, the one the software has
+selected as the most relevant example.
+
+While in the text of one of the broadside documents, FLEISCHHAUER
+remarked AM's attempt to find ways to connect cataloging to the texts,
+which it does in different ways in different manifestations. In the case
+shown, the cataloging was pasted on: AM took MARC records that were
+written as on-line records right into one of the Library's mainframe
+retrieval programs, pulled them out, and handed them off to the contractor,
+who massaged them somewhat to display them in the manner shown. One of
+AM's questions is, Does the cataloguing normally performed in the mainframe
+work in this context, or had AM ought to think through adjustments?
+
+FLEISCHHAUER made the additional point that, as far as the text goes, AM
+has gravitated towards SGML (he pointed to the boldface in the upper part
+of the screen). Although extremely limited in its ability to translate
+or interpret SGML, Personal Librarian will furnish both bold and italics
+on screen; a fairly easy thing to do, but it is one of the ways in which
+SGML is useful.
+
+Striking a balance between quantity and quality has been a major concern
+of AM, with accuracy being one of the places where project staff have
+felt that less than 100-percent accuracy was not unacceptable.
+FLEISCHHAUER cited the example of the standard of the rekeying industry,
+namely 99.95 percent; as one service bureau informed him, to go from
+99.95 to 100 percent would double the cost.
+
+FLEISCHHAUER next demonstrated how AM furnishes users recourse to images,
+and at the same time recalled LESK's pointed question concerning the
+number of people who would look at those images and the number who would
+work only with the text. If the implication of LESK's question was
+sound, FLEISCHHAUER said, it raised the stakes for text accuracy and
+reduced the value of the strategy for images.
+
+Contending that preservation is always a bugaboo, FLEISCHHAUER
+demonstrated several images derived from a scan of a preservation
+microfilm that AM had made. He awarded a grade of C at best, perhaps a
+C minus or a C plus, for how well it worked out. Indeed, the matter of
+learning if other people had better ideas about scanning in general, and,
+in particular, scanning from microfilm, was one of the factors that drove
+AM to attempt to think through the agenda for the Workshop. Skew, for
+example, was one of the issues that AM in its ignorance had not reckoned
+would prove so difficult.
+
+Further, the handling of images of the sort shown, in a desktop computer
+environment, involved a considerable amount of zooming and scrolling.
+Ultimately, AM staff feel that perhaps the paper copy that is printed out
+might be the most useful one, but they remain uncertain as to how much
+on-screen reading users will do.
+
+Returning to the text, FLEISCHHAUER asked viewers to imagine a person who
+might be conducting a search in a full-text environment. With this
+scenario, he proceeded to illustrate other features of Personal Librarian
+that he considered helpful; for example, it provides the ability to
+notice words as one reads. Clicking the "include" button on the bottom
+of the search window pops the words that have been highlighted into the
+search. Thus, a user can refine the search as he or she reads,
+re-executing the search and continuing to find things in the quest for
+materials. This software not only contains relevance ranking, Boolean
+operators, and truncation, it also permits one to perform word algebra,
+so to say, where one puts two or three words in parentheses and links
+them with one Boolean operator and then a couple of words in another set
+of parentheses and asks for things within so many words of others.
+
+Until they became acquainted recently with some of the work being done in
+classics, the AM staff had not realized that a large number of the
+projects that involve electronic texts were being done by people with a
+profound interest in language and linguistics. Their search strategies
+and thinking are oriented to those fields, as is shown in particular by
+the Perseus example. As amateur historians, the AM staff were thinking
+more of searching for concepts and ideas than for particular words.
+Obviously, FLEISCHHAUER conceded, searching for concepts and ideas and
+searching for words may be two rather closely related things.
+
+While displaying several images, FLEISCHHAUER observed that the Macintosh
+prototype built by AM contains a greater diversity of formats. Echoing a
+previous speaker, he said that it was easier to stitch things together in
+the Macintosh, though it tended to be a little more anemic in search and
+retrieval. AM, therefore, increasingly has been investigating
+sophisticated retrieval engines in the IBM format.
+
+FLEISCHHAUER demonstrated several additional examples of the prototype
+interfaces: One was AM's metaphor for the network future, in which a
+kind of reading-room graphic suggests how one would be able to go around
+to different materials. AM contains a large number of photographs in
+analog video form worked up from a videodisc, which enable users to make
+copies to print or incorporate in digital documents. A frame-grabber is
+built into the system, making it possible to bring an image into a window
+and digitize or print it out.
+
+FLEISCHHAUER next demonstrated sound recording, which included texts.
+Recycled from a previous project, the collection included sixty 78-rpm
+phonograph records of political speeches that were made during and
+immediately after World War I. These constituted approximately three
+hours of audio, as AM has digitized it, which occupy 150 megabytes on a
+CD. Thus, they are considerably compressed. From the catalogue card,
+FLEISCHHAUER proceeded to a transcript of a speech with the audio
+available and with highlighted text following it as it played.
+A photograph has been added and a transcription made.
+
+Considerable value has been added beyond what the Library of Congress
+normally would do in cataloguing a sound recording, which raises several
+questions for AM concerning where to draw lines about how much value it can
+afford to add and at what point, perhaps, this becomes more than AM could
+reasonably do or reasonably wish to do. FLEISCHHAUER also demonstrated
+a motion picture. As FREEMAN had reported earlier, the motion picture
+materials have proved the most popular, not surprisingly. This says more
+about the medium, he thought, than about AM's presentation of it.
+
+Because AM's goal was to bring together things that could be used by
+historians or by people who were curious about history,
+turn-of-the-century footage seemed to represent the most appropriate
+collections from the Library of Congress in motion pictures. These were
+the very first films made by Thomas Edison's company and some others at
+that time. The particular example illustrated was a Biograph film,
+brought in with a frame-grabber into a window. A single videodisc
+contains about fifty titles and pieces of film from that period, all of
+New York City. Taken together, AM believes, they provide an interesting
+documentary resource.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Using the frame-grabber in AM * Volume of material processed
+and to be processed * Purpose of AM within LC * Cataloguing and the
+nature of AM's material * SGML coding and the question of quality versus
+quantity *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+During the question-and-answer period that followed FLEISCHHAUER's
+presentation, several clarifications were made.
+
+AM is bringing in motion pictures from a videodisc. The frame-grabber
+devices create a window on a computer screen, which permits users to
+digitize a single frame of the movie or one of the photographs. It
+produces a crude, rough-and-ready image that high school students can
+incorporate into papers, and that has worked very nicely in this way.
+
+Commenting on FLEISCHHAUER's assertion that AM was looking more at
+searching ideas than words, MYLONAS argued that without words an idea
+does not exist. FLEISCHHAUER conceded that he ought to have articulated
+his point more clearly. MYLONAS stated that they were in fact both
+talking about the same thing. By searching for words and by forcing
+people to focus on the word, the Perseus Project felt that they would get
+them to the idea. The way one reviews results is tailored more to one
+kind of user than another.
+
+Concerning the total volume of material that has been processed in this
+way, AM at this point has in retrievable form seven or eight collections,
+all of them photographic. In the Macintosh environment, for example,
+there probably are 35,000-40,000 photographs. The sound recordings
+number sixty items. The broadsides number about 300 items. There are
+500 political cartoons in the form of drawings. The motion pictures, as
+individual items, number sixty to seventy.
+
+AM also has a manuscript collection, the life history portion of one of
+the federal project series, which will contain 2,900 individual
+documents, all first-person narratives. AM has in process about 350
+African-American pamphlets, or about 12,000 printed pages for the period
+1870-1910. Also in the works are some 4,000 panoramic photographs. AM
+has recycled a fair amount of the work done by LC's Prints and
+Photographs Division during the Library's optical disk pilot project in
+the 1980s. For example, a special division of LC has tooled up and
+thought through all the ramifications of electronic presentation of
+photographs. Indeed, they are wheeling them out in great barrel loads.
+The purpose of AM within the Library, it is hoped, is to catalyze several
+of the other special collection divisions which have no particular
+experience with, in some cases, mixed feelings about, an activity such as
+AM. Moreover, in many cases the divisions may be characterized as not
+only lacking experience in "electronifying" things but also in automated
+cataloguing. MARC cataloguing as practiced in the United States is
+heavily weighted toward the description of monograph and serial
+materials, but is much thinner when one enters the world of manuscripts
+and things that are held in the Library's music collection and other
+units. In response to a comment by LESK, that AM's material is very
+heavily photographic, and is so primarily because individual records have
+been made for each photograph, FLEISCHHAUER observed that an item-level
+catalog record exists, for example, for each photograph in the Detroit
+Publishing collection of 25,000 pictures. In the case of the Federal
+Writers Project, for which nearly 3,000 documents exist, representing
+information from twenty-six different states, AM with the assistance of
+Karen STUART of the Manuscript Division will attempt to find some way not
+only to have a collection-level record but perhaps a MARC record for each
+state, which will then serve as an umbrella for the 100-200 documents
+that come under it. But that drama remains to be enacted. The AM staff
+is conservative and clings to cataloguing, though of course visitors tout
+artificial intelligence and neural networks in a manner that suggests that
+perhaps one need not have cataloguing or that much of it could be put aside.
+
+The matter of SGML coding, FLEISCHHAUER conceded, returned the discussion
+to the earlier treated question of quality versus quantity in the Library
+of Congress. Of course, text conversion can be done with 100-percent
+accuracy, but it means that when one's holdings are as vast as LC's only
+a tiny amount will be exposed, whereas permitting lower levels of
+accuracy can lead to exposing or sharing larger amounts, but with the
+quality correspondingly impaired.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+TWOHIG * A contrary experience concerning electronic options * Volume of
+material in the Washington papers and a suggestion of David Packard *
+Implications of Packard's suggestion * Transcribing the documents for the
+CD-ROM * Accuracy of transcriptions * The CD-ROM edition of the Founding
+Fathers documents *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Finding encouragement in a comment of MICHELSON's from the morning
+session--that numerous people in the humanities were choosing electronic
+options to do their work--Dorothy TWOHIG, editor, The Papers of George
+Washington, opened her illustrated talk by noting that her experience
+with literary scholars and numerous people in editing was contrary to
+MICHELSON's. TWOHIG emphasized literary scholars' complete ignorance of
+the technological options available to them or their reluctance or, in
+some cases, their downright hostility toward these options.
+
+After providing an overview of the five Founding Fathers projects
+(Jefferson at Princeton, Franklin at Yale, John Adams at the
+Massachusetts Historical Society, and Madison down the hall from her at
+the University of Virginia), TWOHIG observed that the Washington papers,
+like all of the projects, include both sides of the Washington
+correspondence and deal with some 135,000 documents to be published with
+extensive annotation in eighty to eighty-five volumes, a project that
+will not be completed until well into the next century. Thus, it was
+with considerable enthusiasm several years ago that the Washington Papers
+Project (WPP) greeted David Packard's suggestion that the papers of the
+Founding Fathers could be published easily and inexpensively, and to the
+great benefit of American scholarship, via CD-ROM.
+
+In pragmatic terms, funding from the Packard Foundation would expedite
+the transcription of thousands of documents waiting to be put on disk in
+the WPP offices. Further, since the costs of collecting, editing, and
+converting the Founding Fathers documents into letterpress editions were
+running into the millions of dollars, and the considerable staffs
+involved in all of these projects were devoting their careers to
+producing the work, the Packard Foundation's suggestion had a
+revolutionary aspect: Transcriptions of the entire corpus of the
+Founding Fathers papers would be available on CD-ROM to public and
+college libraries, even high schools, at a fraction of the cost--
+$100-$150 for the annual license fee--to produce a limited university
+press run of 1,000 of each volume of the published papers at $45-$150 per
+printed volume. Given the current budget crunch in educational systems
+and the corresponding constraints on librarians in smaller institutions
+who wish to add these volumes to their collections, producing the
+documents on CD-ROM would likely open a greatly expanded audience for the
+papers. TWOHIG stressed, however, that development of the Founding
+Fathers CD-ROM is still in its infancy. Serious software problems remain
+to be resolved before the material can be put into readable form.
+
+Funding from the Packard Foundation resulted in a major push to
+transcribe the 75,000 or so documents of the Washington papers remaining
+to be transcribed onto computer disks. Slides illustrated several of the
+problems encountered, for example, the present inability of CD-ROM to
+indicate the cross-outs (deleted material) in eighteenth century
+documents. TWOHIG next described documents from various periods in the
+eighteenth century that have been transcribed in chronological order and
+delivered to the Packard offices in California, where they are converted
+to the CD-ROM, a process that is expected to consume five years to
+complete (that is, reckoning from David Packard's suggestion made several
+years ago, until about July 1994). TWOHIG found an encouraging
+indication of the project's benefits in the ongoing use made by scholars
+of the search functions of the CD-ROM, particularly in reducing the time
+spent in manually turning the pages of the Washington papers.
+
+TWOHIG next furnished details concerning the accuracy of transcriptions.
+For instance, the insertion of thousands of documents on the CD-ROM
+currently does not permit each document to be verified against the
+original manuscript several times as in the case of documents that appear
+in the published edition. However, the transcriptions receive a cursory
+check for obvious typos, the misspellings of proper names, and other
+errors from the WPP CD-ROM editor. Eventually, all documents that appear
+in the electronic version will be checked by project editors. Although
+this process has met with opposition from some of the editors on the
+grounds that imperfect work may leave their offices, the advantages in
+making this material available as a research tool outweigh fears about the
+misspelling of proper names and other relatively minor editorial matters.
+
+Completion of all five Founding Fathers projects (i.e., retrievability
+and searchability of all of the documents by proper names, alternate
+spellings, or varieties of subjects) will provide one of the richest
+sources of this size for the history of the United States in the latter
+part of the eighteenth century. Further, publication on CD-ROM will
+allow editors to include even minutiae, such as laundry lists, not
+included in the printed volumes.
+
+It seems possible that the extensive annotation provided in the printed
+volumes eventually will be added to the CD-ROM edition, pending
+negotiations with the publishers of the papers. At the moment, the
+Founding Fathers CD-ROM is accessible only on the IBYCUS, a computer
+developed out of the Thesaurus Linguae Graecae project and designed for
+the use of classical scholars. There are perhaps 400 IBYCUS computers in
+the country, most of which are in university classics departments.
+Ultimately, it is anticipated that the CD-ROM edition of the Founding
+Fathers documents will run on any IBM-compatible or Macintosh computer
+with a CD-ROM drive. Numerous changes in the software will also occur
+before the project is completed. (Editor's note: an IBYCUS was
+unavailable to demonstrate the CD-ROM.)
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Several additional features of WPP clarified *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Discussion following TWOHIG's presentation served to clarify several
+additional features, including (1) that the project's primary
+intellectual product consists in the electronic transcription of the
+material; (2) that the text transmitted to the CD-ROM people is not
+marked up; (3) that cataloging and subject-indexing of the material
+remain to be worked out (though at this point material can be retrieved
+by name); and (4) that because all the searching is done in the hardware,
+the IBYCUS is designed to read a CD-ROM which contains only sequential
+text files. Technically, it then becomes very easy to read the material
+off and put it on another device.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+LEBRON * Overview of the history of the joint project between AAAS and
+OCLC * Several practices the on-line environment shares with traditional
+publishing on hard copy * Several technical and behavioral barriers to
+electronic publishing * How AAAS and OCLC arrived at the subject of
+clinical trials * Advantages of the electronic format and other features
+of OJCCT * An illustrated tour of the journal *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Maria LEBRON, managing editor, The Online Journal of Current Clinical
+Trials (OJCCT), presented an illustrated overview of the history of the
+joint project between the American Association for the Advancement of
+Science (AAAS) and the Online Computer Library Center, Inc. (OCLC). The
+joint venture between AAAS and OCLC owes its beginning to a
+reorganization launched by the new chief executive officer at OCLC about
+three years ago and combines the strengths of these two disparate
+organizations. In short, OJCCT represents the process of scholarly
+publishing on line.
+
+LEBRON next discussed several practices the on-line environment shares
+with traditional publishing on hard copy--for example, peer review of
+manuscripts--that are highly important in the academic world. LEBRON
+noted in particular the implications of citation counts for tenure
+committees and grants committees. In the traditional hard-copy
+environment, citation counts are readily demonstrable, whereas the
+on-line environment represents an ethereal medium to most academics.
+
+LEBRON remarked several technical and behavioral barriers to electronic
+publishing, for instance, the problems in transmission created by special
+characters or by complex graphics and halftones. In addition, she noted
+economic limitations such as the storage costs of maintaining back issues
+and market or audience education.
+
+Manuscripts cannot be uploaded to OJCCT, LEBRON explained, because it is
+not a bulletin board or E-mail, forms of electronic transmission of
+information that have created an ambience clouding people's understanding
+of what the journal is attempting to do. OJCCT, which publishes
+peer-reviewed medical articles dealing with the subject of clinical
+trials, includes text, tabular material, and graphics, although at this
+time it can transmit only line illustrations.
+
+Next, LEBRON described how AAAS and OCLC arrived at the subject of
+clinical trials: It is 1) a highly statistical discipline that 2) does
+not require halftones but can satisfy the needs of its audience with line
+illustrations and graphic material, and 3) there is a need for the speedy
+dissemination of high-quality research results. Clinical trials are
+research activities that involve the administration of a test treatment
+to some experimental unit in order to test its usefulness before it is
+made available to the general population. LEBRON proceeded to give
+additional information on OJCCT concerning its editor-in-chief, editorial
+board, editorial content, and the types of articles it publishes
+(including peer-reviewed research reports and reviews), as well as
+features shared by other traditional hard-copy journals.
+
+Among the advantages of the electronic format are faster dissemination of
+information, including raw data, and the absence of space constraints
+because pages do not exist. (This latter fact creates an interesting
+situation when it comes to citations.) Nor are there any issues. AAAS's
+capacity to download materials directly from the journal to a
+subscriber's printer, hard drive, or floppy disk helps ensure highly
+accurate transcription. Other features of OJCCT include on-screen alerts
+that allow linkage of subsequently published documents to the original
+documents; on-line searching by subject, author, title, etc.; indexing of
+every single word that appears in an article; viewing access to an
+article by component (abstract, full text, or graphs); numbered
+paragraphs to replace page counts; publication in Science every thirty
+days of indexing of all articles published in the journal;
+typeset-quality screens; and Hypertext links that enable subscribers to
+bring up Medline abstracts directly without leaving the journal.
+
+After detailing the two primary ways to gain access to the journal,
+through the OCLC network and Compuserv if one desires graphics or through
+the Internet if just an ASCII file is desired, LEBRON illustrated the
+speedy editorial process and the coding of the document using SGML tags
+after it has been accepted for publication. She also gave an illustrated
+tour of the journal, its search-and-retrieval capabilities in particular,
+but also including problems associated with scanning in illustrations,
+and the importance of on-screen alerts to the medical profession re
+retractions or corrections, or more frequently, editorials, letters to
+the editors, or follow-up reports. She closed by inviting the audience
+to join AAAS on 1 July, when OJCCT was scheduled to go on-line.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Additional features of OJCCT *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+In the lengthy discussion that followed LEBRON's presentation, these
+points emerged:
+
+ * The SGML text can be tailored as users wish.
+
+ * All these articles have a fairly simple document definition.
+
+ * Document-type definitions (DTDs) were developed and given to OJCCT
+ for coding.
+
+ * No articles will be removed from the journal. (Because there are
+ no back issues, there are no lost issues either. Once a subscriber
+ logs onto the journal he or she has access not only to the currently
+ published materials, but retrospectively to everything that has been
+ published in it. Thus the table of contents grows bigger. The date
+ of publication serves to distinguish between currently published
+ materials and older materials.)
+
+ * The pricing system for the journal resembles that for most medical
+ journals: for 1992, $95 for a year, plus telecommunications charges
+ (there are no connect time charges); for 1993, $110 for the
+ entire year for single users, though the journal can be put on a
+ local area network (LAN). However, only one person can access the
+ journal at a time. Site licenses may come in the future.
+
+ * AAAS is working closely with colleagues at OCLC to display
+ mathematical equations on screen.
+
+ * Without compromising any steps in the editorial process, the
+ technology has reduced the time lag between when a manuscript is
+ originally submitted and the time it is accepted; the review process
+ does not differ greatly from the standard six-to-eight weeks
+ employed by many of the hard-copy journals. The process still
+ depends on people.
+
+ * As far as a preservation copy is concerned, articles will be
+ maintained on the computer permanently and subscribers, as part of
+ their subscription, will receive a microfiche-quality archival copy
+ of everything published during that year; in addition, reprints can
+ be purchased in much the same way as in a hard-copy environment.
+ Hard copies are prepared but are not the primary medium for the
+ dissemination of the information.
+
+ * Because OJCCT is not yet on line, it is difficult to know how many
+ people would simply browse through the journal on the screen as
+ opposed to downloading the whole thing and printing it out; a mix of
+ both types of users likely will result.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+PERSONIUS * Developments in technology over the past decade * The CLASS
+Project * Advantages for technology and for the CLASS Project *
+Developing a network application an underlying assumption of the project
+* Details of the scanning process * Print-on-demand copies of books *
+Future plans include development of a browsing tool *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Lynne PERSONIUS, assistant director, Cornell Information Technologies for
+Scholarly Information Services, Cornell University, first commented on
+the tremendous impact that developments in technology over the past ten
+years--networking, in particular--have had on the way information is
+handled, and how, in her own case, these developments have counterbalanced
+Cornell's relative geographical isolation. Other significant technologies
+include scanners, which are much more sophisticated than they were ten years
+ago; mass storage and the dramatic savings that result from it in terms of
+both space and money relative to twenty or thirty years ago; new and
+improved printing technologies, which have greatly affected the distribution
+of information; and, of course, digital technologies, whose applicability to
+library preservation remains at issue.
+
+Given that context, PERSONIUS described the College Library Access and
+Storage System (CLASS) Project, a library preservation project,
+primarily, and what has been accomplished. Directly funded by the
+Commission on Preservation and Access and by the Xerox Corporation, which
+has provided a significant amount of hardware, the CLASS Project has been
+working with a development team at Xerox to develop a software
+application tailored to library preservation requirements. Within
+Cornell, participants in the project have been working jointly with both
+library and information technologies. The focus of the project has been
+on reformatting and saving books that are in brittle condition.
+PERSONIUS showed Workshop participants a brittle book, and described how
+such books were the result of developments in papermaking around the
+beginning of the Industrial Revolution. The papermaking process was
+changed so that a significant amount of acid was introduced into the
+actual paper itself, which deteriorates as it sits on library shelves.
+
+One of the advantages for technology and for the CLASS Project is that
+the information in brittle books is mostly out of copyright and thus
+offers an opportunity to work with material that requires library
+preservation, and to create and work on an infrastructure to save the
+material. Acknowledging the familiarity of those working in preservation
+with this information, PERSONIUS noted that several things are being
+done: the primary preservation technology used today is photocopying of
+brittle material. Saving the intellectual content of the material is the
+main goal. With microfilm copy, the intellectual content is preserved on
+the assumption that in the future the image can be reformatted in any
+other way that then exists.
+
+An underlying assumption of the CLASS Project from the beginning was
+that it would develop a network application. Project staff scan books
+at a workstation located in the library, near the brittle material.
+An image-server filing system is located at a distance from that
+workstation, and a printer is located in another building. All of the
+materials digitized and stored on the image-filing system are cataloged
+in the on-line catalogue. In fact, a record for each of these electronic
+books is stored in the RLIN database so that a record exists of what is
+in the digital library throughout standard catalogue procedures. In the
+future, researchers working from their own workstations in their offices,
+or their networks, will have access--wherever they might be--through a
+request server being built into the new digital library. A second
+assumption is that the preferred means of finding the material will be by
+looking through a catalogue. PERSONIUS described the scanning process,
+which uses a prototype scanner being developed by Xerox and which scans a
+very high resolution image at great speed. Another significant feature,
+because this is a preservation application, is the placing of the pages
+that fall apart one for one on the platen. Ordinarily, a scanner could
+be used with some sort of a document feeder, but because of this
+application that is not feasible. Further, because CLASS is a
+preservation application, after the paper replacement is made there, a
+very careful quality control check is performed. An original book is
+compared to the printed copy and verification is made, before proceeding,
+that all of the image, all of the information, has been captured. Then,
+a new library book is produced: The printed images are rebound by a
+commercial binder and a new book is returned to the shelf.
+Significantly, the books returned to the library shelves are beautiful
+and useful replacements on acid-free paper that should last a long time,
+in effect, the equivalent of preservation photocopies. Thus, the project
+has a library of digital books. In essence, CLASS is scanning and
+storing books as 600 dot-per-inch bit-mapped images, compressed using
+Group 4 CCITT (i.e., the French acronym for International Consultative
+Committee for Telegraph and Telephone) compression. They are stored as
+TIFF files on an optical filing system that is composed of a database
+used for searching and locating the books and an optical jukebox that
+stores 64 twelve-inch platters. A very-high-resolution printed copy of
+these books at 600 dots per inch is created, using a Xerox DocuTech
+printer to make the paper replacements on acid-free paper.
+
+PERSONIUS maintained that the CLASS Project presents an opportunity to
+introduce people to books as digital images by using a paper medium.
+Books are returned to the shelves while people are also given the ability
+to print on demand--to make their own copies of books. (PERSONIUS
+distributed copies of an engineering journal published by engineering
+students at Cornell around 1900 as an example of what a print-on-demand
+copy of material might be like. This very cheap copy would be available
+to people to use for their own research purposes and would bridge the gap
+between an electronic work and the paper that readers like to have.)
+PERSONIUS then attempted to illustrate a very early prototype of
+networked access to this digital library. Xerox Corporation has
+developed a prototype of a view station that can send images across the
+network to be viewed.
+
+The particular library brought down for demonstration contained two
+mathematics books. CLASS is developing and will spend the next year
+developing an application that allows people at workstations to browse
+the books. Thus, CLASS is developing a browsing tool, on the assumption
+that users do not want to read an entire book from a workstation, but
+would prefer to be able to look through and decide if they would like to
+have a printed copy of it.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Re retrieval software * "Digital file copyright" * Scanning
+rate during production * Autosegmentation * Criteria employed in
+selecting books for scanning * Compression and decompression of images *
+OCR not precluded *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+During the question-and-answer period that followed her presentation,
+PERSONIUS made these additional points:
+
+ * Re retrieval software, Cornell is developing a Unix-based server
+ as well as clients for the server that support multiple platforms
+ (Macintosh, IBM and Sun workstations), in the hope that people from
+ any of those platforms will retrieve books; a further operating
+ assumption is that standard interfaces will be used as much as
+ possible, where standards can be put in place, because CLASS
+ considers this retrieval software a library application and would
+ like to be able to look at material not only at Cornell but at other
+ institutions.
+
+ * The phrase "digital file copyright by Cornell University" was
+ added at the advice of Cornell's legal staff with the caveat that it
+ probably would not hold up in court. Cornell does not want people
+ to copy its books and sell them but would like to keep them
+ available for use in a library environment for library purposes.
+
+ * In production the scanner can scan about 300 pages per hour,
+ capturing 600 dots per inch.
+
+ * The Xerox software has filters to scan halftone material and avoid
+ the moire patterns that occur when halftone material is scanned.
+ Xerox has been working on hardware and software that would enable
+ the scanner itself to recognize this situation and deal with it
+ appropriately--a kind of autosegmentation that would enable the
+ scanner to handle halftone material as well as text on a single page.
+
+ * The books subjected to the elaborate process described above were
+ selected because CLASS is a preservation project, with the first 500
+ books selected coming from Cornell's mathematics collection, because
+ they were still being heavily used and because, although they were
+ in need of preservation, the mathematics library and the mathematics
+ faculty were uncomfortable having them microfilmed. (They wanted a
+ printed copy.) Thus, these books became a logical choice for this
+ project. Other books were chosen by the project's selection committees
+ for experiments with the technology, as well as to meet a demand or need.
+
+ * Images will be decompressed before they are sent over the line; at
+ this time they are compressed and sent to the image filing system
+ and then sent to the printer as compressed images; they are returned
+ to the workstation as compressed 600-dpi images and the workstation
+ decompresses and scales them for display--an inefficient way to
+ access the material though it works quite well for printing and
+ other purposes.
+
+ * CLASS is also decompressing on Macintosh and IBM, a slow process
+ right now. Eventually, compression and decompression will take
+ place on an image conversion server. Trade-offs will be made, based
+ on future performance testing, concerning where the file is
+ compressed and what resolution image is sent.
+
+ * OCR has not been precluded; images are being stored that have been
+ scanned at a high resolution, which presumably would suit them well
+ to an OCR process. Because the material being scanned is about 100
+ years old and was printed with less-than-ideal technologies, very
+ early and preliminary tests have not produced good results. But the
+ project is capturing an image that is of sufficient resolution to be
+ subjected to OCR in the future. Moreover, the system architecture
+ and the system plan have a logical place to store an OCR image if it
+ has been captured. But that is not being done now.
+
+ ******
+
+SESSION III. DISTRIBUTION, NETWORKS, AND NETWORKING: OPTIONS FOR
+DISSEMINATION
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ZICH * Issues pertaining to CD-ROMs * Options for publishing in CD-ROM *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Robert ZICH, special assistant to the associate librarian for special
+projects, Library of Congress, and moderator of this session, first noted
+the blessed but somewhat awkward circumstance of having four very
+distinguished people representing networks and networking or at least
+leaning in that direction, while lacking anyone to speak from the
+strongest possible background in CD-ROMs. ZICH expressed the hope that
+members of the audience would join the discussion. He stressed the
+subtitle of this particular session, "Options for Dissemination," and,
+concerning CD-ROMs, the importance of determining when it would be wise
+to consider dissemination in CD-ROM versus networks. A shopping list of
+issues pertaining to CD-ROMs included: the grounds for selecting
+commercial publishers, and in-house publication where possible versus
+nonprofit or government publication. A similar list for networks
+included: determining when one should consider dissemination through a
+network, identifying the mechanisms or entities that exist to place items
+on networks, identifying the pool of existing networks, determining how a
+producer would choose between networks, and identifying the elements of
+a business arrangement in a network.
+
+Options for publishing in CD-ROM: an outside publisher versus
+self-publication. If an outside publisher is used, it can be nonprofit,
+such as the Government Printing Office (GPO) or the National Technical
+Information Service (NTIS), in the case of government. The pros and cons
+associated with employing an outside publisher are obvious. Among the
+pros, there is no trouble getting accepted. One pays the bill and, in
+effect, goes one's way. Among the cons, when one pays an outside
+publisher to perform the work, that publisher will perform the work it is
+obliged to do, but perhaps without the production expertise and skill in
+marketing and dissemination that some would seek. There is the body of
+commercial publishers that do possess that kind of expertise in
+distribution and marketing but that obviously are selective. In
+self-publication, one exercises full control, but then one must handle
+matters such as distribution and marketing. Such are some of the options
+for publishing in the case of CD-ROM.
+
+In the case of technical and design issues, which are also important,
+there are many matters which many at the Workshop already knew a good
+deal about: retrieval system requirements and costs, what to do about
+images, the various capabilities and platforms, the trade-offs between
+cost and performance, concerns about local-area networkability,
+interoperability, etc.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+LYNCH * Creating networked information is different from using networks
+as an access or dissemination vehicle * Networked multimedia on a large
+scale does not yet work * Typical CD-ROM publication model a two-edged
+sword * Publishing information on a CD-ROM in the present world of
+immature standards * Contrast between CD-ROM and network pricing *
+Examples demonstrated earlier in the day as a set of insular information
+gems * Paramount need to link databases * Layering to become increasingly
+necessary * Project NEEDS and the issues of information reuse and active
+versus passive use * X-Windows as a way of differentiating between
+network access and networked information * Barriers to the distribution
+of networked multimedia information * Need for good, real-time delivery
+protocols * The question of presentation integrity in client-server
+computing in the academic world * Recommendations for producing multimedia
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Clifford LYNCH, director, Library Automation, University of California,
+opened his talk with the general observation that networked information
+constituted a difficult and elusive topic because it is something just
+starting to develop and not yet fully understood. LYNCH contended that
+creating genuinely networked information was different from using
+networks as an access or dissemination vehicle and was more sophisticated
+and more subtle. He invited the members of the audience to extrapolate,
+from what they heard about the preceding demonstration projects, to what
+sort of a world of electronics information--scholarly, archival,
+cultural, etc.--they wished to end up with ten or fifteen years from now.
+LYNCH suggested that to extrapolate directly from these projects would
+produce unpleasant results.
+
+Putting the issue of CD-ROM in perspective before getting into
+generalities on networked information, LYNCH observed that those engaged
+in multimedia today who wish to ship a product, so to say, probably do
+not have much choice except to use CD-ROM: networked multimedia on a
+large scale basically does not yet work because the technology does not
+exist. For example, anybody who has tried moving images around over the
+Internet knows that this is an exciting touch-and-go process, a
+fascinating and fertile area for experimentation, research, and
+development, but not something that one can become deeply enthusiastic
+about committing to production systems at this time.
+
+This situation will change, LYNCH said. He differentiated CD-ROM from
+the practices that have been followed up to now in distributing data on
+CD-ROM. For LYNCH the problem with CD-ROM is not its portability or its
+slowness but the two-edged sword of having the retrieval application and
+the user interface inextricably bound up with the data, which is the
+typical CD-ROM publication model. It is not a case of publishing data
+but of distributing a typically stand-alone, typically closed system,
+all--software, user interface, and data--on a little disk. Hence, all
+the between-disk navigational issues as well as the impossibility in most
+cases of integrating data on one disk with that on another. Most CD-ROM
+retrieval software does not network very gracefully at present. However,
+in the present world of immature standards and lack of understanding of
+what network information is or what the ground rules are for creating or
+using it, publishing information on a CD-ROM does add value in a very
+real sense.
+
+LYNCH drew a contrast between CD-ROM and network pricing and in doing so
+highlighted something bizarre in information pricing. A large
+institution such as the University of California has vendors who will
+offer to sell information on CD-ROM for a price per year in four digits,
+but for the same data (e.g., an abstracting and indexing database) on
+magnetic tape, regardless of how many people may use it concurrently,
+will quote a price in six digits.
+
+What is packaged with the CD-ROM in one sense adds value--a complete
+access system, not just raw, unrefined information--although it is not
+generally perceived that way. This is because the access software,
+although it adds value, is viewed by some people, particularly in the
+university environment where there is a very heavy commitment to
+networking, as being developed in the wrong direction.
+
+Given that context, LYNCH described the examples demonstrated as a set of
+insular information gems--Perseus, for example, offers nicely linked
+information, but would be very difficult to integrate with other
+databases, that is, to link together seamlessly with other source files
+from other sources. It resembles an island, and in this respect is
+similar to numerous stand-alone projects that are based on videodiscs,
+that is, on the single-workstation concept.
+
+As scholarship evolves in a network environment, the paramount need will
+be to link databases. We must link personal databases to public
+databases, to group databases, in fairly seamless ways--which is
+extremely difficult in the environments under discussion with copies of
+databases proliferating all over the place.
+
+The notion of layering also struck LYNCH as lurking in several of the
+projects demonstrated. Several databases in a sense constitute
+information archives without a significant amount of navigation built in.
+Educators, critics, and others will want a layered structure--one that
+defines or links paths through the layers to allow users to reach
+specific points. In LYNCH's view, layering will become increasingly
+necessary, and not just within a single resource but across resources
+(e.g., tracing mythology and cultural themes across several classics
+databases as well as a database of Renaissance culture). This ability to
+organize resources, to build things out of multiple other things on the
+network or select pieces of it, represented for LYNCH one of the key
+aspects of network information.
+
+Contending that information reuse constituted another significant issue,
+LYNCH commended to the audience's attention Project NEEDS (i.e., National
+Engineering Education Delivery System). This project's objective is to
+produce a database of engineering courseware as well as the components
+that can be used to develop new courseware. In a number of the existing
+applications, LYNCH said, the issue of reuse (how much one can take apart
+and reuse in other applications) was not being well considered. He also
+raised the issue of active versus passive use, one aspect of which is
+how much information will be manipulated locally by users. Most people,
+he argued, may do a little browsing and then will wish to print. LYNCH
+was uncertain how these resources would be used by the vast majority of
+users in the network environment.
+
+LYNCH next said a few words about X-Windows as a way of differentiating
+between network access and networked information. A number of the
+applications demonstrated at the Workshop could be rewritten to use X
+across the network, so that one could run them from any X-capable device-
+-a workstation, an X terminal--and transact with a database across the
+network. Although this opens up access a little, assuming one has enough
+network to handle it, it does not provide an interface to develop a
+program that conveniently integrates information from multiple databases.
+X is a viewing technology that has limits. In a real sense, it is just a
+graphical version of remote log-in across the network. X-type applications
+represent only one step in the progression towards real access.
+
+LYNCH next discussed barriers to the distribution of networked multimedia
+information. The heart of the problem is a lack of standards to provide
+the ability for computers to talk to each other, retrieve information,
+and shuffle it around fairly casually. At the moment, little progress is
+being made on standards for networked information; for example, present
+standards do not cover images, digital voice, and digital video. A
+useful tool kit of exchange formats for basic texts is only now being
+assembled. The synchronization of content streams (i.e., synchronizing a
+voice track to a video track, establishing temporal relations between
+different components in a multimedia object) constitutes another issue
+for networked multimedia that is just beginning to receive attention.
+
+Underlying network protocols also need some work; good, real-time
+delivery protocols on the Internet do not yet exist. In LYNCH's view,
+highly important in this context is the notion of networked digital
+object IDs, the ability of one object on the network to point to another
+object (or component thereof) on the network. Serious bandwidth issues
+also exist. LYNCH was uncertain if billion-bit-per-second networks would
+prove sufficient if numerous people ran video in parallel.
+
+LYNCH concluded by offering an issue for database creators to consider,
+as well as several comments about what might constitute good trial
+multimedia experiments. In a networked information world the database
+builder or service builder (publisher) does not exercise the same
+extensive control over the integrity of the presentation; strange
+programs "munge" with one's data before the user sees it. Serious
+thought must be given to what guarantees integrity of presentation. Part
+of that is related to where one draws the boundaries around a networked
+information service. This question of presentation integrity in
+client-server computing has not been stressed enough in the academic
+world, LYNCH argued, though commercial service providers deal with it
+regularly.
+
+Concerning multimedia, LYNCH observed that good multimedia at the moment
+is hideously expensive to produce. He recommended producing multimedia
+with either very high sale value, or multimedia with a very long life
+span, or multimedia that will have a very broad usage base and whose
+costs therefore can be amortized among large numbers of users. In this
+connection, historical and humanistically oriented material may be a good
+place to start, because it tends to have a longer life span than much of
+the scientific material, as well as a wider user base. LYNCH noted, for
+example, that American Memory fits many of the criteria outlined. He
+remarked the extensive discussion about bringing the Internet or the
+National Research and Education Network (NREN) into the K-12 environment
+as a way of helping the American educational system.
+
+LYNCH closed by noting that the kinds of applications demonstrated struck
+him as excellent justifications of broad-scale networking for K-12, but
+that at this time no "killer" application exists to mobilize the K-12
+community to obtain connectivity.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Dearth of genuinely interesting applications on the network
+a slow-changing situation * The issue of the integrity of presentation in
+a networked environment * Several reasons why CD-ROM software does not
+network *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+During the discussion period that followed LYNCH's presentation, several
+additional points were made.
+
+LYNCH reiterated even more strongly his contention that, historically,
+once one goes outside high-end science and the group of those who need
+access to supercomputers, there is a great dearth of genuinely
+interesting applications on the network. He saw this situation changing
+slowly, with some of the scientific databases and scholarly discussion
+groups and electronic journals coming on as well as with the availability
+of Wide Area Information Servers (WAIS) and some of the databases that
+are being mounted there. However, many of those things do not seem to
+have piqued great popular interest. For instance, most high school
+students of LYNCH's acquaintance would not qualify as devotees of serious
+molecular biology.
+
+Concerning the issue of the integrity of presentation, LYNCH believed
+that a couple of information providers have laid down the law at least on
+certain things. For example, his recollection was that the National
+Library of Medicine feels strongly that one needs to employ the
+identifier field if he or she is to mount a database commercially. The
+problem with a real networked environment is that one does not know who
+is reformatting and reprocessing one's data when one enters a client
+server mode. It becomes anybody's guess, for example, if the network
+uses a Z39.50 server, or what clients are doing with one's data. A data
+provider can say that his contract will only permit clients to have
+access to his data after he vets them and their presentation and makes
+certain it suits him. But LYNCH held out little expectation that the
+network marketplace would evolve in that way, because it required too
+much prior negotiation.
+
+CD-ROM software does not network for a variety of reasons, LYNCH said.
+He speculated that CD-ROM publishers are not eager to have their products
+really hook into wide area networks, because they fear it will make their
+data suppliers nervous. Moreover, until relatively recently, one had to
+be rather adroit to run a full TCP/IP stack plus applications on a
+PC-size machine, whereas nowadays it is becoming easier as PCs grow
+bigger and faster. LYNCH also speculated that software providers had not
+heard from their customers until the last year or so, or had not heard
+from enough of their customers.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+BESSER * Implications of disseminating images on the network; planning
+the distribution of multimedia documents poses two critical
+implementation problems * Layered approach represents the way to deal
+with users' capabilities * Problems in platform design; file size and its
+implications for networking * Transmission of megabyte size images
+impractical * Compression and decompression at the user's end * Promising
+trends for compression * A disadvantage of using X-Windows * A project at
+the Smithsonian that mounts images on several networks *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Howard BESSER, School of Library and Information Science, University of
+Pittsburgh, spoke primarily about multimedia, focusing on images and the
+broad implications of disseminating them on the network. He argued that
+planning the distribution of multimedia documents posed two critical
+implementation problems, which he framed in the form of two questions:
+1) What platform will one use and what hardware and software will users
+have for viewing of the material? and 2) How can one deliver a
+sufficiently robust set of information in an accessible format in a
+reasonable amount of time? Depending on whether network or CD-ROM is the
+medium used, this question raises different issues of storage,
+compression, and transmission.
+
+Concerning the design of platforms (e.g., sound, gray scale, simple
+color, etc.) and the various capabilities users may have, BESSER
+maintained that a layered approach was the way to deal with users'
+capabilities. A result would be that users with less powerful
+workstations would simply have less functionality. He urged members of
+the audience to advocate standards and accompanying software that handle
+layered functionality across a wide variety of platforms.
+
+BESSER also addressed problems in platform design, namely, deciding how
+large a machine to design for situations when the largest number of users
+have the lowest level of the machine, and one desires higher
+functionality. BESSER then proceeded to the question of file size and
+its implications for networking. He discussed still images in the main.
+For example, a digital color image that fills the screen of a standard
+mega-pel workstation (Sun or Next) will require one megabyte of storage
+for an eight-bit image or three megabytes of storage for a true color or
+twenty-four-bit image. Lossless compression algorithms (that is,
+computational procedures in which no data is lost in the process of
+compressing [and decompressing] an image--the exact bit-representation is
+maintained) might bring storage down to a third of a megabyte per image,
+but not much further than that. The question of size makes it difficult
+to fit an appropriately sized set of these images on a single disk or to
+transmit them quickly enough on a network.
+
+With these full screen mega-pel images that constitute a third of a
+megabyte, one gets 1,000-3,000 full-screen images on a one-gigabyte disk;
+a standard CD-ROM represents approximately 60 percent of that. Storing
+images the size of a PC screen (just 8 bit color) increases storage
+capacity to 4,000-12,000 images per gigabyte; 60 percent of that gives
+one the size of a CD-ROM, which in turn creates a major problem. One
+cannot have full-screen, full-color images with lossless compression; one
+must compress them or use a lower resolution. For megabyte-size images,
+anything slower than a T-1 speed is impractical. For example, on a
+fifty-six-kilobaud line, it takes three minutes to transfer a
+one-megabyte file, if it is not compressed; and this speed assumes ideal
+circumstances (no other user contending for network bandwidth). Thus,
+questions of disk access, remote display, and current telephone
+connection speed make transmission of megabyte-size images impractical.
+
+BESSER then discussed ways to deal with these large images, for example,
+compression and decompression at the user's end. In this connection, the
+issues of how much one is willing to lose in the compression process and
+what image quality one needs in the first place are unknown. But what is
+known is that compression entails some loss of data. BESSER urged that
+more studies be conducted on image quality in different situations, for
+example, what kind of images are needed for what kind of disciplines, and
+what kind of image quality is needed for a browsing tool, an intermediate
+viewing tool, and archiving.
+
+BESSER remarked two promising trends for compression: from a technical
+perspective, algorithms that use what is called subjective redundancy
+employ principles from visual psycho-physics to identify and remove
+information from the image that the human eye cannot perceive; from an
+interchange and interoperability perspective, the JPEG (i.e., Joint
+Photographic Experts Group, an ISO standard) compression algorithms also
+offer promise. These issues of compression and decompression, BESSER
+argued, resembled those raised earlier concerning the design of different
+platforms. Gauging the capabilities of potential users constitutes a
+primary goal. BESSER advocated layering or separating the images from
+the applications that retrieve and display them, to avoid tying them to
+particular software.
+
+BESSER detailed several lessons learned from his work at Berkeley with
+Imagequery, especially the advantages and disadvantages of using
+X-Windows. In the latter category, for example, retrieval is tied
+directly to one's data, an intolerable situation in the long run on a
+networked system. Finally, BESSER described a project of Jim Wallace at
+the Smithsonian Institution, who is mounting images in a extremely
+rudimentary way on the Compuserv and Genie networks and is preparing to
+mount them on America On Line. Although the average user takes over
+thirty minutes to download these images (assuming a fairly fast modem),
+nevertheless, images have been downloaded 25,000 times.
+
+BESSER concluded his talk with several comments on the business
+arrangement between the Smithsonian and Compuserv. He contended that not
+enough is known concerning the value of images.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Creating digitized photographic collections nearly
+impossible except with large organizations like museums * Need for study
+to determine quality of images users will tolerate *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+During the brief exchange between LESK and BESSER that followed, several
+clarifications emerged.
+
+LESK argued that the photographers were far ahead of BESSER: It is
+almost impossible to create such digitized photographic collections
+except with large organizations like museums, because all the
+photographic agencies have been going crazy about this and will not sign
+licensing agreements on any sort of reasonable terms. LESK had heard
+that National Geographic, for example, had tried to buy the right to use
+some image in some kind of educational production for $100 per image, but
+the photographers will not touch it. They want accounting and payment
+for each use, which cannot be accomplished within the system. BESSER
+responded that a consortium of photographers, headed by a former National
+Geographic photographer, had started assembling its own collection of
+electronic reproductions of images, with the money going back to the
+cooperative.
+
+LESK contended that BESSER was unnecessarily pessimistic about multimedia
+images, because people are accustomed to low-quality images, particularly
+from video. BESSER urged the launching of a study to determine what
+users would tolerate, what they would feel comfortable with, and what
+absolutely is the highest quality they would ever need. Conceding that
+he had adopted a dire tone in order to arouse people about the issue,
+BESSER closed on a sanguine note by saying that he would not be in this
+business if he did not think that things could be accomplished.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+LARSEN * Issues of scalability and modularity * Geometric growth of the
+Internet and the role played by layering * Basic functions sustaining
+this growth * A library's roles and functions in a network environment *
+Effects of implementation of the Z39.50 protocol for information
+retrieval on the library system * The trade-off between volumes of data
+and its potential usage * A snapshot of current trends *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Ronald LARSEN, associate director for information technology, University
+of Maryland at College Park, first addressed the issues of scalability
+and modularity. He noted the difficulty of anticipating the effects of
+orders-of-magnitude growth, reflecting on the twenty years of experience
+with the Arpanet and Internet. Recalling the day's demonstrations of
+CD-ROM and optical disk material, he went on to ask if the field has yet
+learned how to scale new systems to enable delivery and dissemination
+across large-scale networks.
+
+LARSEN focused on the geometric growth of the Internet from its inception
+circa 1969 to the present, and the adjustments required to respond to
+that rapid growth. To illustrate the issue of scalability, LARSEN
+considered computer networks as including three generic components:
+computers, network communication nodes, and communication media. Each
+component scales (e.g., computers range from PCs to supercomputers;
+network nodes scale from interface cards in a PC through sophisticated
+routers and gateways; and communication media range from 2,400-baud
+dial-up facilities through 4.5-Mbps backbone links, and eventually to
+multigigabit-per-second communication lines), and architecturally, the
+components are organized to scale hierarchically from local area networks
+to international-scale networks. Such growth is made possible by
+building layers of communication protocols, as BESSER pointed out.
+By layering both physically and logically, a sense of scalability is
+maintained from local area networks in offices, across campuses, through
+bridges, routers, campus backbones, fiber-optic links, etc., up into
+regional networks and ultimately into national and international
+networks.
+
+LARSEN then illustrated the geometric growth over a two-year period--
+through September 1991--of the number of networks that comprise the
+Internet. This growth has been sustained largely by the availability of
+three basic functions: electronic mail, file transfer (ftp), and remote
+log-on (telnet). LARSEN also reviewed the growth in the kind of traffic
+that occurs on the network. Network traffic reflects the joint contributions
+of a larger population of users and increasing use per user. Today one sees
+serious applications involving moving images across the network--a rarity
+ten years ago. LARSEN recalled and concurred with BESSER's main point
+that the interesting problems occur at the application level.
+
+LARSEN then illustrated a model of a library's roles and functions in a
+network environment. He noted, in particular, the placement of on-line
+catalogues onto the network and patrons obtaining access to the library
+increasingly through local networks, campus networks, and the Internet.
+LARSEN supported LYNCH's earlier suggestion that we need to address
+fundamental questions of networked information in order to build
+environments that scale in the information sense as well as in the
+physical sense.
+
+LARSEN supported the role of the library system as the access point into
+the nation's electronic collections. Implementation of the Z39.50
+protocol for information retrieval would make such access practical and
+feasible. For example, this would enable patrons in Maryland to search
+California libraries, or other libraries around the world that are
+conformant with Z39.50 in a manner that is familiar to University of
+Maryland patrons. This client-server model also supports moving beyond
+secondary content into primary content. (The notion of how one links
+from secondary content to primary content, LARSEN said, represents a
+fundamental problem that requires rigorous thought.) After noting
+numerous network experiments in accessing full-text materials, including
+projects supporting the ordering of materials across the network, LARSEN
+revisited the issue of transmitting high-density, high-resolution color
+images across the network and the large amounts of bandwidth they
+require. He went on to address the bandwidth and synchronization
+problems inherent in sending full-motion video across the network.
+
+LARSEN illustrated the trade-off between volumes of data in bytes or
+orders of magnitude and the potential usage of that data. He discussed
+transmission rates (particularly, the time it takes to move various forms
+of information), and what one could do with a network supporting
+multigigabit-per-second transmission. At the moment, the network
+environment includes a composite of data-transmission requirements,
+volumes and forms, going from steady to bursty (high-volume) and from
+very slow to very fast. This aggregate must be considered in the design,
+construction, and operation of multigigabyte networks.
+
+LARSEN's objective is to use the networks and library systems now being
+constructed to increase access to resources wherever they exist, and
+thus, to evolve toward an on-line electronic virtual library.
+
+LARSEN concluded by offering a snapshot of current trends: continuing
+geometric growth in network capacity and number of users; slower
+development of applications; and glacial development and adoption of
+standards. The challenge is to design and develop each new application
+system with network access and scalability in mind.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+BROWNRIGG * Access to the Internet cannot be taken for granted * Packet
+radio and the development of MELVYL in 1980-81 in the Division of Library
+Automation at the University of California * Design criteria for packet
+radio * A demonstration project in San Diego and future plans * Spread
+spectrum * Frequencies at which the radios will run and plans to
+reimplement the WAIS server software in the public domain * Need for an
+infrastructure of radios that do not move around *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Edwin BROWNRIGG, executive director, Memex Research Institute, first
+polled the audience in order to seek out regular users of the Internet as
+well as those planning to use it some time in the future. With nearly
+everybody in the room falling into one category or the other, BROWNRIGG
+made a point re access, namely that numerous individuals, especially those
+who use the Internet every day, take for granted their access to it, the
+speeds with which they are connected, and how well it all works.
+However, as BROWNRIGG discovered between 1987 and 1989 in Australia,
+if one wants access to the Internet but cannot afford it or has some
+physical boundary that prevents her or him from gaining access, it can
+be extremely frustrating. He suggested that because of economics and
+physical barriers we were beginning to create a world of haves and have-nots
+in the process of scholarly communication, even in the United States.
+
+BROWNRIGG detailed the development of MELVYL in academic year 1980-81 in
+the Division of Library Automation at the University of California, in
+order to underscore the issue of access to the system, which at the
+outset was extremely limited. In short, the project needed to build a
+network, which at that time entailed use of satellite technology, that is,
+putting earth stations on campus and also acquiring some terrestrial links
+from the State of California's microwave system. The installation of
+satellite links, however, did not solve the problem (which actually
+formed part of a larger problem involving politics and financial resources).
+For while the project team could get a signal onto a campus, it had no means
+of distributing the signal throughout the campus. The solution involved
+adopting a recent development in wireless communication called packet radio,
+which combined the basic notion of packet-switching with radio. The project
+used this technology to get the signal from a point on campus where it
+came down, an earth station for example, into the libraries, because it
+found that wiring the libraries, especially the older marble buildings,
+would cost $2,000-$5,000 per terminal.
+
+BROWNRIGG noted that, ten years ago, the project had neither the public
+policy nor the technology that would have allowed it to use packet radio
+in any meaningful way. Since then much had changed. He proceeded to
+detail research and development of the technology, how it is being
+deployed in California, and what direction he thought it would take.
+The design criteria are to produce a high-speed, one-time, low-cost,
+high-quality, secure, license-free device (packet radio) that one can
+plug in and play today, forget about it, and have access to the Internet.
+By high speed, BROWNRIGG meant 1 megabyte and 1.5 megabytes. Those units
+have been built, he continued, and are in the process of being
+type-certified by an independent underwriting laboratory so that they can
+be type-licensed by the Federal Communications Commission. As is the
+case with citizens band, one will be able to purchase a unit and not have
+to worry about applying for a license.
+
+The basic idea, BROWNRIGG elaborated, is to take high-speed radio data
+transmission and create a backbone network that at certain strategic
+points in the network will "gateway" into a medium-speed packet radio
+(i.e., one that runs at 38.4 kilobytes), so that perhaps by 1994-1995
+people, like those in the audience for the price of a VCR could purchase
+a medium-speed radio for the office or home, have full network connectivity
+to the Internet, and partake of all its services, with no need for an FCC
+license and no regular bill from the local common carrier. BROWNRIGG
+presented several details of a demonstration project currently taking
+place in San Diego and described plans, pending funding, to install a
+full-bore network in the San Francisco area. This network will have 600
+nodes running at backbone speeds, and 100 of these nodes will be libraries,
+which in turn will be the gateway ports to the 38.4 kilobyte radios that
+will give coverage for the neighborhoods surrounding the libraries.
+
+BROWNRIGG next explained Part 15.247, a new rule within Title 47 of the
+Code of Federal Regulations enacted by the FCC in 1985. This rule
+challenged the industry, which has only now risen to the occasion, to
+build a radio that would run at no more than one watt of output power and
+use a fairly exotic method of modulating the radio wave called spread
+spectrum. Spread spectrum in fact permits the building of networks so
+that numerous data communications can occur simultaneously, without
+interfering with each other, within the same wide radio channel.
+
+BROWNRIGG explained that the frequencies at which the radios would run
+are very short wave signals. They are well above standard microwave and
+radar. With a radio wave that small, one watt becomes a tremendous punch
+per bit and thus makes transmission at reasonable speed possible. In
+order to minimize the potential for congestion, the project is
+undertaking to reimplement software which has been available in the
+networking business and is taken for granted now, for example, TCP/IP,
+routing algorithms, bridges, and gateways. In addition, the project
+plans to take the WAIS server software in the public domain and
+reimplement it so that one can have a WAIS server on a Mac instead of a
+Unix machine. The Memex Research Institute believes that libraries, in
+particular, will want to use the WAIS servers with packet radio. This
+project, which has a team of about twelve people, will run through 1993
+and will include the 100 libraries already mentioned as well as other
+professionals such as those in the medical profession, engineering, and
+law. Thus, the need is to create an infrastructure of radios that do not
+move around, which, BROWNRIGG hopes, will solve a problem not only for
+libraries but for individuals who, by and large today, do not have access
+to the Internet from their homes and offices.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Project operating frequencies *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+During a brief discussion period, which also concluded the day's
+proceedings, BROWNRIGG stated that the project was operating in four
+frequencies. The slow speed is operating at 435 megahertz, and it would
+later go up to 920 megahertz. With the high-speed frequency, the
+one-megabyte radios will run at 2.4 gigabits, and 1.5 will run at 5.7.
+At 5.7, rain can be a factor, but it would have to be tropical rain,
+unlike what falls in most parts of the United States.
+
+ ******
+
+SESSION IV. IMAGE CAPTURE, TEXT CAPTURE, OVERVIEW OF TEXT AND
+ IMAGE STORAGE FORMATS
+
+William HOOTON, vice president of operations, I-NET, moderated this session.
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+KENNEY * Factors influencing development of CXP * Advantages of using
+digital technology versus photocopy and microfilm * A primary goal of
+CXP; publishing challenges * Characteristics of copies printed * Quality
+of samples achieved in image capture * Several factors to be considered
+in choosing scanning * Emphasis of CXP on timely and cost-effective
+production of black-and-white printed facsimiles * Results of producing
+microfilm from digital files * Advantages of creating microfilm * Details
+concerning production * Costs * Role of digital technology in library
+preservation *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Anne KENNEY, associate director, Department of Preservation and
+Conservation, Cornell University, opened her talk by observing that the
+Cornell Xerox Project (CXP) has been guided by the assumption that the
+ability to produce printed facsimiles or to replace paper with paper
+would be important, at least for the present generation of users and
+equipment. She described three factors that influenced development of
+the project: 1) Because the project has emphasized the preservation of
+deteriorating brittle books, the quality of what was produced had to be
+sufficiently high to return a paper replacement to the shelf. CXP was
+only interested in using: 2) a system that was cost-effective, which
+meant that it had to be cost-competitive with the processes currently
+available, principally photocopy and microfilm, and 3) new or currently
+available product hardware and software.
+
+KENNEY described the advantages that using digital technology offers over
+both photocopy and microfilm: 1) The potential exists to create a higher
+quality reproduction of a deteriorating original than conventional
+light-lens technology. 2) Because a digital image is an encoded
+representation, it can be reproduced again and again with no resulting
+loss of quality, as opposed to the situation with light-lens processes,
+in which there is discernible difference between a second and a
+subsequent generation of an image. 3) A digital image can be manipulated
+in a number of ways to improve image capture; for example, Xerox has
+developed a windowing application that enables one to capture a page
+containing both text and illustrations in a manner that optimizes the
+reproduction of both. (With light-lens technology, one must choose which
+to optimize, text or the illustration; in preservation microfilming, the
+current practice is to shoot an illustrated page twice, once to highlight
+the text and the second time to provide the best capture for the
+illustration.) 4) A digital image can also be edited, density levels
+adjusted to remove underlining and stains, and to increase legibility for
+faint documents. 5) On-screen inspection can take place at the time of
+initial setup and adjustments made prior to scanning, factors that
+substantially reduce the number of retakes required in quality control.
+
+A primary goal of CXP has been to evaluate the paper output printed on
+the Xerox DocuTech, a high-speed printer that produces 600-dpi pages from
+scanned images at a rate of 135 pages a minute. KENNEY recounted several
+publishing challenges to represent faithful and legible reproductions of
+the originals that the 600-dpi copy for the most part successfully
+captured. For example, many of the deteriorating volumes in the project
+were heavily illustrated with fine line drawings or halftones or came in
+languages such as Japanese, in which the buildup of characters comprised
+of varying strokes is difficult to reproduce at lower resolutions; a
+surprising number of them came with annotations and mathematical
+formulas, which it was critical to be able to duplicate exactly.
+
+KENNEY noted that 1) the copies are being printed on paper that meets the
+ANSI standards for performance, 2) the DocuTech printer meets the machine
+and toner requirements for proper adhesion of print to page, as described
+by the National Archives, and thus 3) paper product is considered to be
+the archival equivalent of preservation photocopy.
+
+KENNEY then discussed several samples of the quality achieved in the
+project that had been distributed in a handout, for example, a copy of a
+print-on-demand version of the 1911 Reed lecture on the steam turbine,
+which contains halftones, line drawings, and illustrations embedded in
+text; the first four loose pages in the volume compared the capture
+capabilities of scanning to photocopy for a standard test target, the
+IEEE standard 167A 1987 test chart. In all instances scanning proved
+superior to photocopy, though only slightly more so in one.
+
+Conceding the simplistic nature of her review of the quality of scanning
+to photocopy, KENNEY described it as one representation of the kinds of
+settings that could be used with scanning capabilities on the equipment
+CXP uses. KENNEY also pointed out that CXP investigated the quality
+achieved with binary scanning only, and noted the great promise in gray
+scale and color scanning, whose advantages and disadvantages need to be
+examined. She argued further that scanning resolutions and file formats
+can represent a complex trade-off between the time it takes to capture
+material, file size, fidelity to the original, and on-screen display; and
+printing and equipment availability. All these factors must be taken
+into consideration.
+
+CXP placed primary emphasis on the production in a timely and
+cost-effective manner of printed facsimiles that consisted largely of
+black-and-white text. With binary scanning, large files may be
+compressed efficiently and in a lossless manner (i.e., no data is lost in
+the process of compressing [and decompressing] an image--the exact
+bit-representation is maintained) using Group 4 CCITT (i.e., the French
+acronym for International Consultative Committee for Telegraph and
+Telephone) compression. CXP was getting compression ratios of about
+forty to one. Gray-scale compression, which primarily uses JPEG, is much
+less economical and can represent a lossy compression (i.e., not
+lossless), so that as one compresses and decompresses, the illustration
+is subtly changed. While binary files produce a high-quality printed
+version, it appears 1) that other combinations of spatial resolution with
+gray and/or color hold great promise as well, and 2) that gray scale can
+represent a tremendous advantage for on-screen viewing. The quality
+associated with binary and gray scale also depends on the equipment used.
+For instance, binary scanning produces a much better copy on a binary
+printer.
+
+Among CXP's findings concerning the production of microfilm from digital
+files, KENNEY reported that the digital files for the same Reed lecture
+were used to produce sample film using an electron beam recorder. The
+resulting film was faithful to the image capture of the digital files,
+and while CXP felt that the text and image pages represented in the Reed
+lecture were superior to that of the light-lens film, the resolution
+readings for the 600 dpi were not as high as standard microfilming.
+KENNEY argued that the standards defined for light-lens technology are
+not totally transferable to a digital environment. Moreover, they are
+based on definition of quality for a preservation copy. Although making
+this case will prove to be a long, uphill struggle, CXP plans to continue
+to investigate the issue over the course of the next year.
+
+KENNEY concluded this portion of her talk with a discussion of the
+advantages of creating film: it can serve as a primary backup and as a
+preservation master to the digital file; it could then become the print
+or production master and service copies could be paper, film, optical
+disks, magnetic media, or on-screen display.
+
+Finally, KENNEY presented details re production:
+
+ * Development and testing of a moderately-high resolution production
+ scanning workstation represented a third goal of CXP; to date, 1,000
+ volumes have been scanned, or about 300,000 images.
+
+ * The resulting digital files are stored and used to produce
+ hard-copy replacements for the originals and additional prints on
+ demand; although the initial costs are high, scanning technology
+ offers an affordable means for reformatting brittle material.
+
+ * A technician in production mode can scan 300 pages per hour when
+ performing single-sheet scanning, which is a necessity when working
+ with truly brittle paper; this figure is expected to increase
+ significantly with subsequent iterations of the software from Xerox;
+ a three-month time-and-cost study of scanning found that the average
+ 300-page book would take about an hour and forty minutes to scan
+ (this figure included the time for setup, which involves keying in
+ primary bibliographic data, going into quality control mode to
+ define page size, establishing front-to-back registration, and
+ scanning sample pages to identify a default range of settings for
+ the entire book--functions not dissimilar to those performed by
+ filmers or those preparing a book for photocopy).
+
+ * The final step in the scanning process involved rescans, which
+ happily were few and far between, representing well under 1 percent
+ of the total pages scanned.
+
+In addition to technician time, CXP costed out equipment, amortized over
+four years, the cost of storing and refreshing the digital files every
+four years, and the cost of printing and binding, book-cloth binding, a
+paper reproduction. The total amounted to a little under $65 per single
+300-page volume, with 30 percent overhead included--a figure competitive
+with the prices currently charged by photocopy vendors.
+
+Of course, with scanning, in addition to the paper facsimile, one is left
+with a digital file from which subsequent copies of the book can be
+produced for a fraction of the cost of photocopy, with readers afforded
+choices in the form of these copies.
+
+KENNEY concluded that digital technology offers an electronic means for a
+library preservation effort to pay for itself. If a brittle-book program
+included the means of disseminating reprints of books that are in demand
+by libraries and researchers alike, the initial investment in capture
+could be recovered and used to preserve additional but less popular
+books. She disclosed that an economic model for a self-sustaining
+program could be developed for CXP's report to the Commission on
+Preservation and Access (CPA).
+
+KENNEY stressed that the focus of CXP has been on obtaining high quality
+in a production environment. The use of digital technology is viewed as
+an affordable alternative to other reformatting options.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ANDRE * Overview and history of NATDP * Various agricultural CD-ROM
+products created inhouse and by service bureaus * Pilot project on
+Internet transmission * Additional products in progress *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Pamela ANDRE, associate director for automation, National Agricultural
+Text Digitizing Program (NATDP), National Agricultural Library (NAL),
+presented an overview of NATDP, which has been underway at NAL the last
+four years, before Judith ZIDAR discussed the technical details. ANDRE
+defined agricultural information as a broad range of material going from
+basic and applied research in the hard sciences to the one-page pamphlets
+that are distributed by the cooperative state extension services on such
+things as how to grow blueberries.
+
+NATDP began in late 1986 with a meeting of representatives from the
+land-grant library community to deal with the issue of electronic
+information. NAL and forty-five of these libraries banded together to
+establish this project--to evaluate the technology for converting what
+were then source documents in paper form into electronic form, to provide
+access to that digital information, and then to distribute it.
+Distributing that material to the community--the university community as
+well as the extension service community, potentially down to the county
+level--constituted the group's chief concern.
+
+Since January 1988 (when the microcomputer-based scanning system was
+installed at NAL), NATDP has done a variety of things, concerning which
+ZIDAR would provide further details. For example, the first technology
+considered in the project's discussion phase was digital videodisc, which
+indicates how long ago it was conceived.
+
+Over the four years of this project, four separate CD-ROM products on
+four different agricultural topics were created, two at a
+scanning-and-OCR station installed at NAL, and two by service bureaus.
+Thus, NATDP has gained comparative information in terms of those relative
+costs. Each of these products contained the full ASCII text as well as
+page images of the material, or between 4,000 and 6,000 pages of material
+on these disks. Topics included aquaculture, food, agriculture and
+science (i.e., international agriculture and research), acid rain, and
+Agent Orange, which was the final product distributed (approximately
+eighteen months before the Workshop).
+
+The third phase of NATDP focused on delivery mechanisms other than
+CD-ROM. At the suggestion of Clifford LYNCH, who was a technical
+consultant to the project at this point, NATDP became involved with the
+Internet and initiated a project with the help of North Carolina State
+University, in which fourteen of the land-grant university libraries are
+transmitting digital images over the Internet in response to interlibrary
+loan requests--a topic for another meeting. At this point, the pilot
+project had been completed for about a year and the final report would be
+available shortly after the Workshop. In the meantime, the project's
+success had led to its extension. (ANDRE noted that one of the first
+things done under the program title was to select a retrieval package to
+use with subsequent products; Windows Personal Librarian was the package
+of choice after a lengthy evaluation.)
+
+Three additional products had been planned and were in progress:
+
+ 1) An arrangement with the American Society of Agronomy--a
+ professional society that has published the Agronomy Journal since
+ about 1908--to scan and create bit-mapped images of its journal.
+ ASA granted permission first to put and then to distribute this
+ material in electronic form, to hold it at NAL, and to use these
+ electronic images as a mechanism to deliver documents or print out
+ material for patrons, among other uses. Effectively, NAL has the
+ right to use this material in support of its program.
+ (Significantly, this arrangement offers a potential cooperative
+ model for working with other professional societies in agriculture
+ to try to do the same thing--put the journals of particular interest
+ to agriculture research into electronic form.)
+
+ 2) An extension of the earlier product on aquaculture.
+
+ 3) The George Washington Carver Papers--a joint project with
+ Tuskegee University to scan and convert from microfilm some 3,500
+ images of Carver's papers, letters, and drawings.
+
+It was anticipated that all of these products would appear no more than
+six months after the Workshop.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ZIDAR * (A separate arena for scanning) * Steps in creating a database *
+Image capture, with and without performing OCR * Keying in tracking data
+* Scanning, with electronic and manual tracking * Adjustments during
+scanning process * Scanning resolutions * Compression * De-skewing and
+filtering * Image capture from microform: the papers and letters of
+George Washington Carver * Equipment used for a scanning system *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Judith ZIDAR, coordinator, National Agricultural Text Digitizing Program
+(NATDP), National Agricultural Library (NAL), illustrated the technical
+details of NATDP, including her primary responsibility, scanning and
+creating databases on a topic and putting them on CD-ROM.
+
+(ZIDAR remarked a separate arena from the CD-ROM projects, although the
+processing of the material is nearly identical, in which NATDP is also
+scanning material and loading it on a Next microcomputer, which in turn
+is linked to NAL's integrated library system. Thus, searches in NAL's
+bibliographic database will enable people to pull up actual page images
+and text for any documents that have been entered.)
+
+In accordance with the session's topic, ZIDAR focused her illustrated
+talk on image capture, offering a primer on the three main steps in the
+process: 1) assemble the printed publications; 2) design the database
+(database design occurs in the process of preparing the material for
+scanning; this step entails reviewing and organizing the material,
+defining the contents--what will constitute a record, what kinds of
+fields will be captured in terms of author, title, etc.); 3) perform a
+certain amount of markup on the paper publications. NAL performs this
+task record by record, preparing work sheets or some other sort of
+tracking material and designing descriptors and other enhancements to be
+added to the data that will not be captured from the printed publication.
+Part of this process also involves determining NATDP's file and directory
+structure: NATDP attempts to avoid putting more than approximately 100
+images in a directory, because placing more than that on a CD-ROM would
+reduce the access speed.
+
+This up-front process takes approximately two weeks for a
+6,000-7,000-page database. The next step is to capture the page images.
+How long this process takes is determined by the decision whether or not
+to perform OCR. Not performing OCR speeds the process, whereas text
+capture requires greater care because of the quality of the image: it
+has to be straighter and allowance must be made for text on a page, not
+just for the capture of photographs.
+
+NATDP keys in tracking data, that is, a standard bibliographic record
+including the title of the book and the title of the chapter, which will
+later either become the access information or will be attached to the
+front of a full-text record so that it is searchable.
+
+Images are scanned from a bound or unbound publication, chiefly from
+bound publications in the case of NATDP, however, because often they are
+the only copies and the publications are returned to the shelves. NATDP
+usually scans one record at a time, because its database tracking system
+tracks the document in that way and does not require further logical
+separating of the images. After performing optical character
+recognition, NATDP moves the images off the hard disk and maintains a
+volume sheet. Though the system tracks electronically, all the
+processing steps are also tracked manually with a log sheet.
+
+ZIDAR next illustrated the kinds of adjustments that one can make when
+scanning from paper and microfilm, for example, redoing images that need
+special handling, setting for dithering or gray scale, and adjusting for
+brightness or for the whole book at one time.
+
+NATDP is scanning at 300 dots per inch, a standard scanning resolution.
+Though adequate for capturing text that is all of a standard size, 300
+dpi is unsuitable for any kind of photographic material or for very small
+text. Many scanners allow for different image formats, TIFF, of course,
+being a de facto standard. But if one intends to exchange images with
+other people, the ability to scan other image formats, even if they are
+less common, becomes highly desirable.
+
+CCITT Group 4 is the standard compression for normal black-and-white
+images, JPEG for gray scale or color. ZIDAR recommended 1) using the
+standard compressions, particularly if one attempts to make material
+available and to allow users to download images and reuse them from
+CD-ROMs; and 2) maintaining the ability to output an uncompressed image,
+because in image exchange uncompressed images are more likely to be able
+to cross platforms.
+
+ZIDAR emphasized the importance of de-skewing and filtering as
+requirements on NATDP's upgraded system. For instance, scanning bound
+books, particularly books published by the federal government whose pages
+are skewed, and trying to scan them straight if OCR is to be performed,
+is extremely time-consuming. The same holds for filtering of
+poor-quality or older materials.
+
+ZIDAR described image capture from microform, using as an example three
+reels from a sixty-seven-reel set of the papers and letters of George
+Washington Carver that had been produced by Tuskegee University. These
+resulted in approximately 3,500 images, which NATDP had had scanned by
+its service contractor, Science Applications International Corporation
+(SAIC). NATDP also created bibliographic records for access. (NATDP did
+not have such specialized equipment as a microfilm scanner.
+
+Unfortunately, the process of scanning from microfilm was not an
+unqualified success, ZIDAR reported: because microfilm frame sizes vary,
+occasionally some frames were missed, which without spending much time
+and money could not be recaptured.
+
+OCR could not be performed from the scanned images of the frames. The
+bleeding in the text simply output text, when OCR was run, that could not
+even be edited. NATDP tested for negative versus positive images,
+landscape versus portrait orientation, and single- versus dual-page
+microfilm, none of which seemed to affect the quality of the image; but
+also on none of them could OCR be performed.
+
+In selecting the microfilm they would use, therefore, NATDP had other
+factors in mind. ZIDAR noted two factors that influenced the quality of
+the images: 1) the inherent quality of the original and 2) the amount of
+size reduction on the pages.
+
+The Carver papers were selected because they are informative and visually
+interesting, treat a single subject, and are valuable in their own right.
+The images were scanned and divided into logical records by SAIC, then
+delivered, and loaded onto NATDP's system, where bibliographic
+information taken directly from the images was added. Scanning was
+completed in summer 1991 and by the end of summer 1992 the disk was
+scheduled to be published.
+
+Problems encountered during processing included the following: Because
+the microfilm scanning had to be done in a batch, adjustment for
+individual page variations was not possible. The frame size varied on
+account of the nature of the material, and therefore some of the frames
+were missed while others were just partial frames. The only way to go
+back and capture this material was to print out the page with the
+microfilm reader from the missing frame and then scan it in from the
+page, which was extremely time-consuming. The quality of the images
+scanned from the printout of the microfilm compared unfavorably with that
+of the original images captured directly from the microfilm. The
+inability to perform OCR also was a major disappointment. At the time,
+computer output microfilm was unavailable to test.
+
+The equipment used for a scanning system was the last topic addressed by
+ZIDAR. The type of equipment that one would purchase for a scanning
+system included: a microcomputer, at least a 386, but preferably a 486;
+a large hard disk, 380 megabyte at minimum; a multi-tasking operating
+system that allows one to run some things in batch in the background
+while scanning or doing text editing, for example, Unix or OS/2 and,
+theoretically, Windows; a high-speed scanner and scanning software that
+allows one to make the various adjustments mentioned earlier; a
+high-resolution monitor (150 dpi ); OCR software and hardware to perform
+text recognition; an optical disk subsystem on which to archive all the
+images as the processing is done; file management and tracking software.
+
+ZIDAR opined that the software one purchases was more important than the
+hardware and might also cost more than the hardware, but it was likely to
+prove critical to the success or failure of one's system. In addition to
+a stand-alone scanning workstation for image capture, then, text capture
+requires one or two editing stations networked to this scanning station
+to perform editing. Editing the text takes two or three times as long as
+capturing the images.
+
+Finally, ZIDAR stressed the importance of buying an open system that allows
+for more than one vendor, complies with standards, and can be upgraded.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+WATERS *Yale University Library's master plan to convert microfilm to
+digital imagery (POB) * The place of electronic tools in the library of
+the future * The uses of images and an image library * Primary input from
+preservation microfilm * Features distinguishing POB from CXP and key
+hypotheses guiding POB * Use of vendor selection process to facilitate
+organizational work * Criteria for selecting vendor * Finalists and
+results of process for Yale * Key factor distinguishing vendors *
+Components, design principles, and some estimated costs of POB * Role of
+preservation materials in developing imaging market * Factors affecting
+quality and cost * Factors affecting the usability of complex documents
+in image form *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Donald WATERS, head of the Systems Office, Yale University Library,
+reported on the progress of a master plan for a project at Yale to
+convert microfilm to digital imagery, Project Open Book (POB). Stating
+that POB was in an advanced stage of planning, WATERS detailed, in
+particular, the process of selecting a vendor partner and several key
+issues under discussion as Yale prepares to move into the project itself.
+He commented first on the vision that serves as the context of POB and
+then described its purpose and scope.
+
+WATERS sees the library of the future not necessarily as an electronic
+library but as a place that generates, preserves, and improves for its
+clients ready access to both intellectual and physical recorded
+knowledge. Electronic tools must find a place in the library in the
+context of this vision. Several roles for electronic tools include
+serving as: indirect sources of electronic knowledge or as "finding"
+aids (the on-line catalogues, the article-level indices, registers for
+documents and archives); direct sources of recorded knowledge; full-text
+images; and various kinds of compound sources of recorded knowledge (the
+so-called compound documents of Hypertext, mixed text and image,
+mixed-text image format, and multimedia).
+
+POB is looking particularly at images and an image library, the uses to
+which images will be put (e.g., storage, printing, browsing, and then use
+as input for other processes), OCR as a subsequent process to image
+capture, or creating an image library, and also possibly generating
+microfilm.
+
+While input will come from a variety of sources, POB is considering
+especially input from preservation microfilm. A possible outcome is that
+the film and paper which provide the input for the image library
+eventually may go off into remote storage, and that the image library may
+be the primary access tool.
+
+The purpose and scope of POB focus on imaging. Though related to CXP,
+POB has two features which distinguish it: 1) scale--conversion of
+10,000 volumes into digital image form; and 2) source--conversion from
+microfilm. Given these features, several key working hypotheses guide
+POB, including: 1) Since POB is using microfilm, it is not concerned with
+the image library as a preservation medium. 2) Digital imagery can improve
+access to recorded knowledge through printing and network distribution at
+a modest incremental cost of microfilm. 3) Capturing and storing documents
+in a digital image form is necessary to further improvements in access.
+(POB distinguishes between the imaging, digitizing process and OCR,
+which at this stage it does not plan to perform.)
+
+Currently in its first or organizational phase, POB found that it could
+use a vendor selection process to facilitate a good deal of the
+organizational work (e.g., creating a project team and advisory board,
+confirming the validity of the plan, establishing the cost of the project
+and a budget, selecting the materials to convert, and then raising the
+necessary funds).
+
+POB developed numerous selection criteria, including: a firm committed
+to image-document management, the ability to serve as systems integrator
+in a large-scale project over several years, interest in developing the
+requisite software as a standard rather than a custom product, and a
+willingness to invest substantial resources in the project itself.
+
+Two vendors, DEC and Xerox, were selected as finalists in October 1991,
+and with the support of the Commission on Preservation and Access, each
+was commissioned to generate a detailed requirements analysis for the
+project and then to submit a formal proposal for the completion of the
+project, which included a budget and costs. The terms were that POB would
+pay the loser. The results for Yale of involving a vendor included:
+broad involvement of Yale staff across the board at a relatively low
+cost, which may have long-term significance in carrying out the project
+(twenty-five to thirty university people are engaged in POB); better
+understanding of the factors that affect corporate response to markets
+for imaging products; a competitive proposal; and a more sophisticated
+view of the imaging markets.
+
+The most important factor that distinguished the vendors under
+consideration was their identification with the customer. The size and
+internal complexity of the company also was an important factor. POB was
+looking at large companies that had substantial resources. In the end,
+the process generated for Yale two competitive proposals, with Xerox's
+the clear winner. WATERS then described the components of the proposal,
+the design principles, and some of the costs estimated for the process.
+
+Components are essentially four: a conversion subsystem, a
+network-accessible storage subsystem for 10,000 books (and POB expects
+200 to 600 dpi storage), browsing stations distributed on the campus
+network, and network access to the image printers.
+
+Among the design principles, POB wanted conversion at the highest
+possible resolution. Assuming TIFF files, TIFF files with Group 4
+compression, TCP/IP, and ethernet network on campus, POB wanted a
+client-server approach with image documents distributed to the
+workstations and made accessible through native workstation interfaces
+such as Windows. POB also insisted on a phased approach to
+implementation: 1) a stand-alone, single-user, low-cost entry into the
+business with a workstation focused on conversion and allowing POB to
+explore user access; 2) movement into a higher-volume conversion with
+network-accessible storage and multiple access stations; and 3) a
+high-volume conversion, full-capacity storage, and multiple browsing
+stations distributed throughout the campus.
+
+The costs proposed for start-up assumed the existence of the Yale network
+and its two DocuTech image printers. Other start-up costs are estimated
+at $1 million over the three phases. At the end of the project, the annual
+operating costs estimated primarily for the software and hardware proposed
+come to about $60,000, but these exclude costs for labor needed in the
+conversion process, network and printer usage, and facilities management.
+
+Finally, the selection process produced for Yale a more sophisticated
+view of the imaging markets: the management of complex documents in
+image form is not a preservation problem, not a library problem, but a
+general problem in a broad, general industry. Preservation materials are
+useful for developing that market because of the qualities of the
+material. For example, much of it is out of copyright. The resolution
+of key issues such as the quality of scanning and image browsing also
+will affect development of that market.
+
+The technology is readily available but changing rapidly. In this
+context of rapid change, several factors affect quality and cost, to
+which POB intends to pay particular attention, for example, the various
+levels of resolution that can be achieved. POB believes it can bring
+resolution up to 600 dpi, but an interpolation process from 400 to 600 is
+more likely. The variation quality in microfilm will prove to be a
+highly important factor. POB may reexamine the standards used to film in
+the first place by looking at this process as a follow-on to microfilming.
+
+Other important factors include: the techniques available to the
+operator for handling material, the ways of integrating quality control
+into the digitizing work flow, and a work flow that includes indexing and
+storage. POB's requirement was to be able to deal with quality control
+at the point of scanning. Thus, thanks to Xerox, POB anticipates having
+a mechanism which will allow it not only to scan in batch form, but to
+review the material as it goes through the scanner and control quality
+from the outset.
+
+The standards for measuring quality and costs depend greatly on the uses
+of the material, including subsequent OCR, storage, printing, and
+browsing. But especially at issue for POB is the facility for browsing.
+This facility, WATERS said, is perhaps the weakest aspect of imaging
+technology and the most in need of development.
+
+A variety of factors affect the usability of complex documents in image
+form, among them: 1) the ability of the system to handle the full range
+of document types, not just monographs but serials, multi-part
+monographs, and manuscripts; 2) the location of the database of record
+for bibliographic information about the image document, which POB wants
+to enter once and in the most useful place, the on-line catalog; 3) a
+document identifier for referencing the bibliographic information in one
+place and the images in another; 4) the technique for making the basic
+internal structure of the document accessible to the reader; and finally,
+5) the physical presentation on the CRT of those documents. POB is ready
+to complete this phase now. One last decision involves deciding which
+material to scan.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * TIFF files constitute de facto standard * NARA's experience
+with image conversion software and text conversion * RFC 1314 *
+Considerable flux concerning available hardware and software solutions *
+NAL through-put rate during scanning * Window management questions *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+In the question-and-answer period that followed WATERS's presentation,
+the following points emerged:
+
+ * ZIDAR's statement about using TIFF files as a standard meant de
+ facto standard. This is what most people use and typically exchange
+ with other groups, across platforms, or even occasionally across
+ display software.
+
+ * HOLMES commented on the unsuccessful experience of NARA in
+ attempting to run image-conversion software or to exchange between
+ applications: What are supposedly TIFF files go into other software
+ that is supposed to be able to accept TIFF but cannot recognize the
+ format and cannot deal with it, and thus renders the exchange
+ useless. Re text conversion, he noted the different recognition
+ rates obtained by substituting the make and model of scanners in
+ NARA's recent test of an "intelligent" character-recognition product
+ for a new company. In the selection of hardware and software,
+ HOLMES argued, software no longer constitutes the overriding factor
+ it did until about a year ago; rather it is perhaps important to
+ look at both now.
+
+ * Danny Cohen and Alan Katz of the University of Southern California
+ Information Sciences Institute began circulating as an Internet RFC
+ (RFC 1314) about a month ago a standard for a TIFF interchange
+ format for Internet distribution of monochrome bit-mapped images,
+ which LYNCH said he believed would be used as a de facto standard.
+
+ * FLEISCHHAUER's impression from hearing these reports and thinking
+ about AM's experience was that there is considerable flux concerning
+ available hardware and software solutions. HOOTON agreed and
+ commented at the same time on ZIDAR's statement that the equipment
+ employed affects the results produced. One cannot draw a complete
+ conclusion by saying it is difficult or impossible to perform OCR
+ from scanning microfilm, for example, with that device, that set of
+ parameters, and system requirements, because numerous other people
+ are accomplishing just that, using other components, perhaps.
+ HOOTON opined that both the hardware and the software were highly
+ important. Most of the problems discussed today have been solved in
+ numerous different ways by other people. Though it is good to be
+ cognizant of various experiences, this is not to say that it will
+ always be thus.
+
+ * At NAL, the through-put rate of the scanning process for paper,
+ page by page, performing OCR, ranges from 300 to 600 pages per day;
+ not performing OCR is considerably faster, although how much faster
+ is not known. This is for scanning from bound books, which is much
+ slower.
+
+ * WATERS commented on window management questions: DEC proposed an
+ X-Windows solution which was problematical for two reasons. One was
+ POB's requirement to be able to manipulate images on the workstation
+ and bring them down to the workstation itself and the other was
+ network usage.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+THOMA * Illustration of deficiencies in scanning and storage process *
+Image quality in this process * Different costs entailed by better image
+quality * Techniques for overcoming various de-ficiencies: fixed
+thresholding, dynamic thresholding, dithering, image merge * Page edge
+effects *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+George THOMA, chief, Communications Engineering Branch, National Library
+of Medicine (NLM), illustrated several of the deficiencies discussed by
+the previous speakers. He introduced the topic of special problems by
+noting the advantages of electronic imaging. For example, it is regenerable
+because it is a coded file, and real-time quality control is possible with
+electronic capture, whereas in photographic capture it is not.
+
+One of the difficulties discussed in the scanning and storage process was
+image quality which, without belaboring the obvious, means different
+things for maps, medical X-rays, or broadcast television. In the case of
+documents, THOMA said, image quality boils down to legibility of the
+textual parts, and fidelity in the case of gray or color photo print-type
+material. Legibility boils down to scan density, the standard in most
+cases being 300 dpi. Increasing the resolution with scanners that
+perform 600 or 1200 dpi, however, comes at a cost.
+
+Better image quality entails at least four different kinds of costs: 1)
+equipment costs, because the CCD (i.e., charge-couple device) with
+greater number of elements costs more; 2) time costs that translate to
+the actual capture costs, because manual labor is involved (the time is
+also dependent on the fact that more data has to be moved around in the
+machine in the scanning or network devices that perform the scanning as
+well as the storage); 3) media costs, because at high resolutions larger
+files have to be stored; and 4) transmission costs, because there is just
+more data to be transmitted.
+
+But while resolution takes care of the issue of legibility in image
+quality, other deficiencies have to do with contrast and elements on the
+page scanned or the image that needed to be removed or clarified. Thus,
+THOMA proceeded to illustrate various deficiencies, how they are
+manifested, and several techniques to overcome them.
+
+Fixed thresholding was the first technique described, suitable for
+black-and-white text, when the contrast does not vary over the page. One
+can have many different threshold levels in scanning devices. Thus,
+THOMA offered an example of extremely poor contrast, which resulted from
+the fact that the stock was a heavy red. This is the sort of image that
+when microfilmed fails to provide any legibility whatsoever. Fixed
+thresholding is the way to change the black-to-red contrast to the
+desired black-to-white contrast.
+
+Other examples included material that had been browned or yellowed by
+age. This was also a case of contrast deficiency, and correction was
+done by fixed thresholding. A final example boils down to the same
+thing, slight variability, but it is not significant. Fixed thresholding
+solves this problem as well. The microfilm equivalent is certainly legible,
+but it comes with dark areas. Though THOMA did not have a slide of the
+microfilm in this case, he did show the reproduced electronic image.
+
+When one has variable contrast over a page or the lighting over the page
+area varies, especially in the case where a bound volume has light
+shining on it, the image must be processed by a dynamic thresholding
+scheme. One scheme, dynamic averaging, allows the threshold level not to
+be fixed but to be recomputed for every pixel from the neighboring
+characteristics. The neighbors of a pixel determine where the threshold
+should be set for that pixel.
+
+THOMA showed an example of a page that had been made deficient by a
+variety of techniques, including a burn mark, coffee stains, and a yellow
+marker. Application of a fixed-thresholding scheme, THOMA argued, might
+take care of several deficiencies on the page but not all of them.
+Performing the calculation for a dynamic threshold setting, however,
+removes most of the deficiencies so that at least the text is legible.
+
+Another problem is representing a gray level with black-and-white pixels
+by a process known as dithering or electronic screening. But dithering
+does not provide good image quality for pure black-and-white textual
+material. THOMA illustrated this point with examples. Although its
+suitability for photoprint is the reason for electronic screening or
+dithering, it cannot be used for every compound image. In the document
+that was distributed by CXP, THOMA noticed that the dithered image of the
+IEEE test chart evinced some deterioration in the text. He presented an
+extreme example of deterioration in the text in which compounded
+documents had to be set right by other techniques. The technique
+illustrated by the present example was an image merge in which the page
+is scanned twice and the settings go from fixed threshold to the
+dithering matrix; the resulting images are merged to give the best
+results with each technique.
+
+THOMA illustrated how dithering is also used in nonphotographic or
+nonprint materials with an example of a grayish page from a medical text,
+which was reproduced to show all of the gray that appeared in the
+original. Dithering provided a reproduction of all the gray in the
+original of another example from the same text.
+
+THOMA finally illustrated the problem of bordering, or page-edge,
+effects. Books and bound volumes that are placed on a photocopy machine
+or a scanner produce page-edge effects that are undesirable for two
+reasons: 1) the aesthetics of the image; after all, if the image is to
+be preserved, one does not necessarily want to keep all of its
+deficiencies; 2) compression (with the bordering problem THOMA
+illustrated, the compression ratio deteriorated tremendously). One way
+to eliminate this more serious problem is to have the operator at the
+point of scanning window the part of the image that is desirable and
+automatically turn all of the pixels out of that picture to white.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+FLEISCHHAUER * AM's experience with scanning bound materials * Dithering
+*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Carl FLEISCHHAUER, coordinator, American Memory, Library of Congress,
+reported AM's experience with scanning bound materials, which he likened
+to the problems involved in using photocopying machines. Very few
+devices in the industry offer book-edge scanning, let alone book cradles.
+The problem may be unsolvable, FLEISCHHAUER said, because a large enough
+market does not exist for a preservation-quality scanner. AM is using a
+Kurzweil scanner, which is a book-edge scanner now sold by Xerox.
+
+Devoting the remainder of his brief presentation to dithering,
+FLEISCHHAUER related AM's experience with a contractor who was using
+unsophisticated equipment and software to reduce moire patterns from
+printed halftones. AM took the same image and used the dithering
+algorithm that forms part of the same Kurzweil Xerox scanner; it
+disguised moire patterns much more effectively.
+
+FLEISCHHAUER also observed that dithering produces a binary file which is
+useful for numerous purposes, for example, printing it on a laser printer
+without having to "re-halftone" it. But it tends to defeat efficient
+compression, because the very thing that dithers to reduce moire patterns
+also tends to work against compression schemes. AM thought the
+difference in image quality was worth it.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Relative use as a criterion for POB's selection of books to
+be converted into digital form *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+During the discussion period, WATERS noted that one of the criteria for
+selecting books among the 10,000 to be converted into digital image form
+would be how much relative use they would receive--a subject still
+requiring evaluation. The challenge will be to understand whether
+coherent bodies of material will increase usage or whether POB should
+seek material that is being used, scan that, and make it more accessible.
+POB might decide to digitize materials that are already heavily used, in
+order to make them more accessible and decrease wear on them. Another
+approach would be to provide a large body of intellectually coherent
+material that may be used more in digital form than it is currently used
+in microfilm. POB would seek material that was out of copyright.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+BARONAS * Origin and scope of AIIM * Types of documents produced in
+AIIM's standards program * Domain of AIIM's standardization work * AIIM's
+structure * TC 171 and MS23 * Electronic image management standards *
+Categories of EIM standardization where AIIM standards are being
+developed *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Jean BARONAS, senior manager, Department of Standards and Technology,
+Association for Information and Image Management (AIIM), described the
+not-for-profit association and the national and international programs
+for standardization in which AIIM is active.
+
+Accredited for twenty-five years as the nation's standards development
+organization for document image management, AIIM began life in a library
+community developing microfilm standards. Today the association
+maintains both its library and business-image management standardization
+activities--and has moved into electronic image-management
+standardization (EIM).
+
+BARONAS defined the program's scope. AIIM deals with: 1) the
+terminology of standards and of the technology it uses; 2) methods of
+measurement for the systems, as well as quality; 3) methodologies for
+users to evaluate and measure quality; 4) the features of apparatus used
+to manage and edit images; and 5) the procedures used to manage images.
+
+BARONAS noted that three types of documents are produced in the AIIM
+standards program: the first two, accredited by the American National
+Standards Institute (ANSI), are standards and standard recommended
+practices. Recommended practices differ from standards in that they
+contain more tutorial information. A technical report is not an ANSI
+standard. Because AIIM's policies and procedures for developing
+standards are approved by ANSI, its standards are labeled ANSI/AIIM,
+followed by the number and title of the standard.
+
+BARONAS then illustrated the domain of AIIM's standardization work. For
+example, AIIM is the administrator of the U.S. Technical Advisory Group
+(TAG) to the International Standards Organization's (ISO) technical
+committee, TC l7l Micrographics and Optical Memories for Document and
+Image Recording, Storage, and Use. AIIM officially works through ANSI in
+the international standardization process.
+
+BARONAS described AIIM's structure, including its board of directors, its
+standards board of twelve individuals active in the image-management
+industry, its strategic planning and legal admissibility task forces, and
+its National Standards Council, which is comprised of the members of a
+number of organizations who vote on every AIIM standard before it is
+published. BARONAS pointed out that AIIM's liaisons deal with numerous
+other standards developers, including the optical disk community, office
+and publishing systems, image-codes-and-character set committees, and the
+National Information Standards Organization (NISO).
+
+BARONAS illustrated the procedures of TC l7l, which covers all aspects of
+image management. When AIIM's national program has conceptualized a new
+project, it is usually submitted to the international level, so that the
+member countries of TC l7l can simultaneously work on the development of
+the standard or the technical report. BARONAS also illustrated a classic
+microfilm standard, MS23, which deals with numerous imaging concepts that
+apply to electronic imaging. Originally developed in the l970s, revised
+in the l980s, and revised again in l991, this standard is scheduled for
+another revision. MS23 is an active standard whereby users may propose
+new density ranges and new methods of evaluating film images in the
+standard's revision.
+
+BARONAS detailed several electronic image-management standards, for
+instance, ANSI/AIIM MS44, a quality-control guideline for scanning 8.5"
+by 11" black-and-white office documents. This standard is used with the
+IEEE fax image--a continuous tone photographic image with gray scales,
+text, and several continuous tone pictures--and AIIM test target number
+2, a representative document used in office document management.
+
+BARONAS next outlined the four categories of EIM standardization in which
+AIIM standards are being developed: transfer and retrieval, evaluation,
+optical disc and document scanning applications, and design and
+conversion of documents. She detailed several of the main projects of
+each: 1) in the category of image transfer and retrieval, a bi-level
+image transfer format, ANSI/AIIM MS53, which is a proposed standard that
+describes a file header for image transfer between unlike systems when
+the images are compressed using G3 and G4 compression; 2) the category of
+image evaluation, which includes the AIIM-proposed TR26 tutorial on image
+resolution (this technical report will treat the differences and
+similarities between classical or photographic and electronic imaging);
+3) design and conversion, which includes a proposed technical report
+called "Forms Design Optimization for EIM" (this report considers how
+general-purpose business forms can be best designed so that scanning is
+optimized; reprographic characteristics such as type, rules, background,
+tint, and color will likewise be treated in the technical report); 4)
+disk and document scanning applications includes a project a) on planning
+platters and disk management, b) on generating an application profile for
+EIM when images are stored and distributed on CD-ROM, and c) on
+evaluating SCSI2, and how a common command set can be generated for SCSI2
+so that document scanners are more easily integrated. (ANSI/AIIM MS53
+will also apply to compressed images.)
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+BATTIN * The implications of standards for preservation * A major
+obstacle to successful cooperation * A hindrance to access in the digital
+environment * Standards a double-edged sword for those concerned with the
+preservation of the human record * Near-term prognosis for reliable
+archival standards * Preservation concerns for electronic media * Need
+for reconceptualizing our preservation principles * Standards in the real
+world and the politics of reproduction * Need to redefine the concept of
+archival and to begin to think in terms of life cycles * Cooperation and
+the La Guardia Eight * Concerns generated by discussions on the problems
+of preserving text and image * General principles to be adopted in a
+world without standards *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Patricia BATTIN, president, the Commission on Preservation and Access
+(CPA), addressed the implications of standards for preservation. She
+listed several areas where the library profession and the analog world of
+the printed book had made enormous contributions over the past hundred
+years--for example, in bibliographic formats, binding standards, and, most
+important, in determining what constitutes longevity or archival quality.
+
+Although standards have lightened the preservation burden through the
+development of national and international collaborative programs,
+nevertheless, a pervasive mistrust of other people's standards remains a
+major obstacle to successful cooperation, BATTIN said.
+
+The zeal to achieve perfection, regardless of the cost, has hindered
+rather than facilitated access in some instances, and in the digital
+environment, where no real standards exist, has brought an ironically
+just reward.
+
+BATTIN argued that standards are a double-edged sword for those concerned
+with the preservation of the human record, that is, the provision of
+access to recorded knowledge in a multitude of media as far into the
+future as possible. Standards are essential to facilitate
+interconnectivity and access, but, BATTIN said, as LYNCH pointed out
+yesterday, if set too soon they can hinder creativity, expansion of
+capability, and the broadening of access. The characteristics of
+standards for digital imagery differ radically from those for analog
+imagery. And the nature of digital technology implies continuing
+volatility and change. To reiterate, precipitous standard-setting can
+inhibit creativity, but delayed standard-setting results in chaos.
+
+Since in BATTIN'S opinion the near-term prognosis for reliable archival
+standards, as defined by librarians in the analog world, is poor, two
+alternatives remain: standing pat with the old technology, or
+reconceptualizing.
+
+Preservation concerns for electronic media fall into two general domains.
+One is the continuing assurance of access to knowledge originally
+generated, stored, disseminated, and used in electronic form. This
+domain contains several subdivisions, including 1) the closed,
+proprietary systems discussed the previous day, bundled information such
+as electronic journals and government agency records, and electronically
+produced or captured raw data; and 2) the application of digital
+technologies to the reformatting of materials originally published on a
+deteriorating analog medium such as acid paper or videotape.
+
+The preservation of electronic media requires a reconceptualizing of our
+preservation principles during a volatile, standardless transition which
+may last far longer than any of us envision today. BATTIN urged the
+necessity of shifting focus from assessing, measuring, and setting
+standards for the permanence of the medium to the concept of managing
+continuing access to information stored on a variety of media and
+requiring a variety of ever-changing hardware and software for access--a
+fundamental shift for the library profession.
+
+BATTIN offered a primer on how to move forward with reasonable confidence
+in a world without standards. Her comments fell roughly into two sections:
+1) standards in the real world and 2) the politics of reproduction.
+
+In regard to real-world standards, BATTIN argued the need to redefine the
+concept of archive and to begin to think in terms of life cycles. In
+the past, the naive assumption that paper would last forever produced a
+cavalier attitude toward life cycles. The transient nature of the
+electronic media has compelled people to recognize and accept upfront the
+concept of life cycles in place of permanency.
+
+Digital standards have to be developed and set in a cooperative context
+to ensure efficient exchange of information. Moreover, during this
+transition period, greater flexibility concerning how concepts such as
+backup copies and archival copies in the CXP are defined is necessary,
+or the opportunity to move forward will be lost.
+
+In terms of cooperation, particularly in the university setting, BATTIN
+also argued the need to avoid going off in a hundred different
+directions. The CPA has catalyzed a small group of universities called
+the La Guardia Eight--because La Guardia Airport is where meetings take
+place--Harvard, Yale, Cornell, Princeton, Penn State, Tennessee,
+Stanford, and USC, to develop a digital preservation consortium to look
+at all these issues and develop de facto standards as we move along,
+instead of waiting for something that is officially blessed. Continuing
+to apply analog values and definitions of standards to the digital
+environment, BATTIN said, will effectively lead to forfeiture of the
+benefits of digital technology to research and scholarship.
+
+Under the second rubric, the politics of reproduction, BATTIN reiterated
+an oft-made argument concerning the electronic library, namely, that it
+is more difficult to transform than to create, and nowhere is that belief
+expressed more dramatically than in the conversion of brittle books to
+new media. Preserving information published in electronic media involves
+making sure the information remains accessible and that digital
+information is not lost through reproduction. In the analog world of
+photocopies and microfilm, the issue of fidelity to the original becomes
+paramount, as do issues of "Whose fidelity?" and "Whose original?"
+
+BATTIN elaborated these arguments with a few examples from a recent study
+conducted by the CPA on the problems of preserving text and image.
+Discussions with scholars, librarians, and curators in a variety of
+disciplines dependent on text and image generated a variety of concerns,
+for example: 1) Copy what is, not what the technology is capable of.
+This is very important for the history of ideas. Scholars wish to know
+what the author saw and worked from. And make available at the
+workstation the opportunity to erase all the defects and enhance the
+presentation. 2) The fidelity of reproduction--what is good enough, what
+can we afford, and the difference it makes--issues of subjective versus
+objective resolution. 3) The differences between primary and secondary
+users. Restricting the definition of primary user to the one in whose
+discipline the material has been published runs one headlong into the
+reality that these printed books have had a host of other users from a
+host of other disciplines, who not only were looking for very different
+things, but who also shared values very different from those of the
+primary user. 4) The relationship of the standard of reproduction to new
+capabilities of scholarship--the browsing standard versus an archival
+standard. How good must the archival standard be? Can a distinction be
+drawn between potential users in setting standards for reproduction?
+Archival storage, use copies, browsing copies--ought an attempt to set
+standards even be made? 5) Finally, costs. How much are we prepared to
+pay to capture absolute fidelity? What are the trade-offs between vastly
+enhanced access, degrees of fidelity, and costs?
+
+These standards, BATTIN concluded, serve to complicate further the
+reproduction process, and add to the long list of technical standards
+that are necessary to ensure widespread access. Ways to articulate and
+analyze the costs that are attached to the different levels of standards
+must be found.
+
+Given the chaos concerning standards, which promises to linger for the
+foreseeable future, BATTIN urged adoption of the following general
+principles:
+
+ * Strive to understand the changing information requirements of
+ scholarly disciplines as more and more technology is integrated into
+ the process of research and scholarly communication in order to meet
+ future scholarly needs, not to build for the past. Capture
+ deteriorating information at the highest affordable resolution, even
+ though the dissemination and display technologies will lag.
+
+ * Develop cooperative mechanisms to foster agreement on protocols
+ for document structure and other interchange mechanisms necessary
+ for widespread dissemination and use before official standards are
+ set.
+
+ * Accept that, in a transition period, de facto standards will have
+ to be developed.
+
+ * Capture information in a way that keeps all options open and
+ provides for total convertibility: OCR, scanning of microfilm,
+ producing microfilm from scanned documents, etc.
+
+ * Work closely with the generators of information and the builders
+ of networks and databases to ensure that continuing accessibility is
+ a primary concern from the beginning.
+
+ * Piggyback on standards under development for the broad market, and
+ avoid library-specific standards; work with the vendors, in order to
+ take advantage of that which is being standardized for the rest of
+ the world.
+
+ * Concentrate efforts on managing permanence in the digital world,
+ rather than perfecting the longevity of a particular medium.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Additional comments on TIFF *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+During the brief discussion period that followed BATTIN's presentation,
+BARONAS explained that TIFF was not developed in collaboration with or
+under the auspices of AIIM. TIFF is a company product, not a standard,
+is owned by two corporations, and is always changing. BARONAS also
+observed that ANSI/AIIM MS53, a bi-level image file transfer format that
+allows unlike systems to exchange images, is compatible with TIFF as well
+as with DEC's architecture and IBM's MODCA/IOCA.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+HOOTON * Several questions to be considered in discussing text conversion
+*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+HOOTON introduced the final topic, text conversion, by noting that it is
+becoming an increasingly important part of the imaging business. Many
+people now realize that it enhances their system to be able to have more
+and more character data as part of their imaging system. Re the issue of
+OCR versus rekeying, HOOTON posed several questions: How does one get
+text into computer-readable form? Does one use automated processes?
+Does one attempt to eliminate the use of operators where possible?
+Standards for accuracy, he said, are extremely important: it makes a
+major difference in cost and time whether one sets as a standard 98.5
+percent acceptance or 99.5 percent. He mentioned outsourcing as a
+possibility for converting text. Finally, what one does with the image
+to prepare it for the recognition process is also important, he said,
+because such preparation changes how recognition is viewed, as well as
+facilitates recognition itself.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+LESK * Roles of participants in CORE * Data flow * The scanning process *
+The image interface * Results of experiments involving the use of
+electronic resources and traditional paper copies * Testing the issue of
+serendipity * Conclusions *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Michael LESK, executive director, Computer Science Research, Bell
+Communications Research, Inc. (Bellcore), discussed the Chemical Online
+Retrieval Experiment (CORE), a cooperative project involving Cornell
+University, OCLC, Bellcore, and the American Chemical Society (ACS).
+
+LESK spoke on 1) how the scanning was performed, including the unusual
+feature of page segmentation, and 2) the use made of the text and the
+image in experiments.
+
+Working with the chemistry journals (because ACS has been saving its
+typesetting tapes since the mid-1970s and thus has a significant back-run
+of the most important chemistry journals in the United States), CORE is
+attempting to create an automated chemical library. Approximately a
+quarter of the pages by square inch are made up of images of
+quasi-pictorial material; dealing with the graphic components of the
+pages is extremely important. LESK described the roles of participants
+in CORE: 1) ACS provides copyright permission, journals on paper,
+journals on microfilm, and some of the definitions of the files; 2) at
+Bellcore, LESK chiefly performs the data preparation, while Dennis Egan
+performs experiments on the users of chemical abstracts, and supplies the
+indexing and numerous magnetic tapes; 3) Cornell provides the site of the
+experiment; 4) OCLC develops retrieval software and other user interfaces.
+Various manufacturers and publishers have furnished other help.
+
+Concerning data flow, Bellcore receives microfilm and paper from ACS; the
+microfilm is scanned by outside vendors, while the paper is scanned
+inhouse on an Improvision scanner, twenty pages per minute at 300 dpi,
+which provides sufficient quality for all practical uses. LESK would
+prefer to have more gray level, because one of the ACS journals prints on
+some colored pages, which creates a problem.
+
+Bellcore performs all this scanning, creates a page-image file, and also
+selects from the pages the graphics, to mix with the text file (which is
+discussed later in the Workshop). The user is always searching the ASCII
+file, but she or he may see a display based on the ASCII or a display
+based on the images.
+
+LESK illustrated how the program performs page analysis, and the image
+interface. (The user types several words, is presented with a list--
+usually of the titles of articles contained in an issue--that derives
+from the ASCII, clicks on an icon and receives an image that mirrors an
+ACS page.) LESK also illustrated an alternative interface, based on text
+on the ASCII, the so-called SuperBook interface from Bellcore.
+
+LESK next presented the results of an experiment conducted by Dennis Egan
+and involving thirty-six students at Cornell, one third of them
+undergraduate chemistry majors, one third senior undergraduate chemistry
+majors, and one third graduate chemistry students. A third of them
+received the paper journals, the traditional paper copies and chemical
+abstracts on paper. A third received image displays of the pictures of
+the pages, and a third received the text display with pop-up graphics.
+
+The students were given several questions made up by some chemistry
+professors. The questions fell into five classes, ranging from very easy
+to very difficult, and included questions designed to simulate browsing
+as well as a traditional information retrieval-type task.
+
+LESK furnished the following results. In the straightforward question
+search--the question being, what is the phosphorus oxygen bond distance
+and hydroxy phosphate?--the students were told that they could take
+fifteen minutes and, then, if they wished, give up. The students with
+paper took more than fifteen minutes on average, and yet most of them
+gave up. The students with either electronic format, text or image,
+received good scores in reasonable time, hardly ever had to give up, and
+usually found the right answer.
+
+In the browsing study, the students were given a list of eight topics,
+told to imagine that an issue of the Journal of the American Chemical
+Society had just appeared on their desks, and were also told to flip
+through it and to find topics mentioned in the issue. The average scores
+were about the same. (The students were told to answer yes or no about
+whether or not particular topics appeared.) The errors, however, were
+quite different. The students with paper rarely said that something
+appeared when it had not. But they often failed to find something
+actually mentioned in the issue. The computer people found numerous
+things, but they also frequently said that a topic was mentioned when it
+was not. (The reason, of course, was that they were performing word
+searches. They were finding that words were mentioned and they were
+concluding that they had accomplished their task.)
+
+This question also contained a trick to test the issue of serendipity.
+The students were given another list of eight topics and instructed,
+without taking a second look at the journal, to recall how many of this
+new list of eight topics were in this particular issue. This was an
+attempt to see if they performed better at remembering what they were not
+looking for. They all performed about the same, paper or electronics,
+about 62 percent accurate. In short, LESK said, people were not very
+good when it came to serendipity, but they were no worse at it with
+computers than they were with paper.
+
+(LESK gave a parenthetical illustration of the learning curve of students
+who used SuperBook.)
+
+The students using the electronic systems started off worse than the ones
+using print, but by the third of the three sessions in the series had
+caught up to print. As one might expect, electronics provide a much
+better means of finding what one wants to read; reading speeds, once the
+object of the search has been found, are about the same.
+
+Almost none of the students could perform the hard task--the analogous
+transformation. (It would require the expertise of organic chemists to
+complete.) But an interesting result was that the students using the text
+search performed terribly, while those using the image system did best.
+That the text search system is driven by text offers the explanation.
+Everything is focused on the text; to see the pictures, one must press
+on an icon. Many students found the right article containing the answer
+to the question, but they did not click on the icon to bring up the right
+figure and see it. They did not know that they had found the right place,
+and thus got it wrong.
+
+The short answer demonstrated by this experiment was that in the event
+one does not know what to read, one needs the electronic systems; the
+electronic systems hold no advantage at the moment if one knows what to
+read, but neither do they impose a penalty.
+
+LESK concluded by commenting that, on one hand, the image system was easy
+to use. On the other hand, the text display system, which represented
+twenty man-years of work in programming and polishing, was not winning,
+because the text was not being read, just searched. The much easier
+system is highly competitive as well as remarkably effective for the
+actual chemists.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ERWAY * Most challenging aspect of working on AM * Assumptions guiding
+AM's approach * Testing different types of service bureaus * AM's
+requirement for 99.95 percent accuracy * Requirements for text-coding *
+Additional factors influencing AM's approach to coding * Results of AM's
+experience with rekeying * Other problems in dealing with service bureaus
+* Quality control the most time-consuming aspect of contracting out
+conversion * Long-term outlook uncertain *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+To Ricky ERWAY, associate coordinator, American Memory, Library of
+Congress, the constant variety of conversion projects taking place
+simultaneously represented perhaps the most challenging aspect of working
+on AM. Thus, the challenge was not to find a solution for text
+conversion but a tool kit of solutions to apply to LC's varied
+collections that need to be converted. ERWAY limited her remarks to the
+process of converting text to machine-readable form, and the variety of
+LC's text collections, for example, bound volumes, microfilm, and
+handwritten manuscripts.
+
+Two assumptions have guided AM's approach, ERWAY said: 1) A desire not
+to perform the conversion inhouse. Because of the variety of formats and
+types of texts, to capitalize the equipment and have the talents and
+skills to operate them at LC would be extremely expensive. Further, the
+natural inclination to upgrade to newer and better equipment each year
+made it reasonable for AM to focus on what it did best and seek external
+conversion services. Using service bureaus also allowed AM to have
+several types of operations take place at the same time. 2) AM was not a
+technology project, but an effort to improve access to library
+collections. Hence, whether text was converted using OCR or rekeying
+mattered little to AM. What mattered were cost and accuracy of results.
+
+AM considered different types of service bureaus and selected three to
+perform several small tests in order to acquire a sense of the field.
+The sample collections with which they worked included handwritten
+correspondence, typewritten manuscripts from the 1940s, and
+eighteenth-century printed broadsides on microfilm. On none of these
+samples was OCR performed; they were all rekeyed. AM had several special
+requirements for the three service bureaus it had engaged. For instance,
+any errors in the original text were to be retained. Working from bound
+volumes or anything that could not be sheet-fed also constituted a factor
+eliminating companies that would have performed OCR.
+
+AM requires 99.95 percent accuracy, which, though it sounds high, often
+means one or two errors per page. The initial batch of test samples
+contained several handwritten materials for which AM did not require
+text-coding. The results, ERWAY reported, were in all cases fairly
+comparable: for the most part, all three service bureaus achieved 99.95
+percent accuracy. AM was satisfied with the work but surprised at the cost.
+
+As AM began converting whole collections, it retained the requirement for
+99.95 percent accuracy and added requirements for text-coding. AM needed
+to begin performing work more than three years ago before LC requirements
+for SGML applications had been established. Since AM's goal was simply
+to retain any of the intellectual content represented by the formatting
+of the document (which would be lost if one performed a straight ASCII
+conversion), AM used "SGML-like" codes. These codes resembled SGML tags
+but were used without the benefit of document-type definitions. AM found
+that many service bureaus were not yet SGML-proficient.
+
+Additional factors influencing the approach AM took with respect to
+coding included: 1) the inability of any known microcomputer-based
+user-retrieval software to take advantage of SGML coding; and 2) the
+multiple inconsistencies in format of the older documents, which
+confirmed AM in its desire not to attempt to force the different formats
+to conform to a single document-type definition (DTD) and thus create the
+need for a separate DTD for each document.
+
+The five text collections that AM has converted or is in the process of
+converting include a collection of eighteenth-century broadsides, a
+collection of pamphlets, two typescript document collections, and a
+collection of 150 books.
+
+ERWAY next reviewed the results of AM's experience with rekeying, noting
+again that because the bulk of AM's materials are historical, the quality
+of the text often does not lend itself to OCR. While non-English
+speakers are less likely to guess or elaborate or correct typos in the
+original text, they are also less able to infer what we would; they also
+are nearly incapable of converting handwritten text. Another
+disadvantage of working with overseas keyers is that they are much less
+likely to telephone with questions, especially on the coding, with the
+result that they develop their own rules as they encounter new
+situations.
+
+Government contracting procedures and time frames posed a major challenge
+to performing the conversion. Many service bureaus are not accustomed to
+retaining the image, even if they perform OCR. Thus, questions of image
+format and storage media were somewhat novel to many of them. ERWAY also
+remarked other problems in dealing with service bureaus, for example,
+their inability to perform text conversion from the kind of microfilm
+that LC uses for preservation purposes.
+
+But quality control, in ERWAY's experience, was the most time-consuming
+aspect of contracting out conversion. AM has been attempting to perform
+a 10-percent quality review, looking at either every tenth document or
+every tenth page to make certain that the service bureaus are maintaining
+99.95 percent accuracy. But even if they are complying with the
+requirement for accuracy, finding errors produces a desire to correct
+them and, in turn, to clean up the whole collection, which defeats the
+purpose to some extent. Even a double entry requires a
+character-by-character comparison to the original to meet the accuracy
+requirement. LC is not accustomed to publish imperfect texts, which
+makes attempting to deal with the industry standard an emotionally
+fraught issue for AM. As was mentioned in the previous day's discussion,
+going from 99.95 to 99.99 percent accuracy usually doubles costs and
+means a third keying or another complete run-through of the text.
+
+Although AM has learned much from its experiences with various collections
+and various service bureaus, ERWAY concluded pessimistically that no
+breakthrough has been achieved. Incremental improvements have occurred
+in some of the OCR technology, some of the processes, and some of the
+standards acceptances, which, though they may lead to somewhat lower costs,
+do not offer much encouragement to many people who are anxiously awaiting
+the day that the entire contents of LC are available on-line.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ZIDAR * Several answers to why one attempts to perform full-text
+conversion * Per page cost of performing OCR * Typical problems
+encountered during editing * Editing poor copy OCR vs. rekeying *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Judith ZIDAR, coordinator, National Agricultural Text Digitizing Program
+(NATDP), National Agricultural Library (NAL), offered several answers to
+the question of why one attempts to perform full-text conversion: 1)
+Text in an image can be read by a human but not by a computer, so of
+course it is not searchable and there is not much one can do with it. 2)
+Some material simply requires word-level access. For instance, the legal
+profession insists on full-text access to its material; with taxonomic or
+geographic material, which entails numerous names, one virtually requires
+word-level access. 3) Full text permits rapid browsing and searching,
+something that cannot be achieved in an image with today's technology.
+4) Text stored as ASCII and delivered in ASCII is standardized and highly
+portable. 5) People just want full-text searching, even those who do not
+know how to do it. NAL, for the most part, is performing OCR at an
+actual cost per average-size page of approximately $7. NAL scans the
+page to create the electronic image and passes it through the OCR device.
+
+ZIDAR next rehearsed several typical problems encountered during editing.
+Praising the celerity of her student workers, ZIDAR observed that editing
+requires approximately five to ten minutes per page, assuming that there
+are no large tables to audit. Confusion among the three characters I, 1,
+and l, constitutes perhaps the most common problem encountered. Zeroes
+and O's also are frequently confused. Double M's create a particular
+problem, even on clean pages. They are so wide in most fonts that they
+touch, and the system simply cannot tell where one letter ends and the
+other begins. Complex page formats occasionally fail to columnate
+properly, which entails rescanning as though one were working with a
+single column, entering the ASCII, and decolumnating for better
+searching. With proportionally spaced text, OCR can have difficulty
+discerning what is a space and what are merely spaces between letters, as
+opposed to spaces between words, and therefore will merge text or break
+up words where it should not.
+
+ZIDAR said that it can often take longer to edit a poor-copy OCR than to
+key it from scratch. NAL has also experimented with partial editing of
+text, whereby project workers go into and clean up the format, removing
+stray characters but not running a spell-check. NAL corrects typos in
+the title and authors' names, which provides a foothold for searching and
+browsing. Even extremely poor-quality OCR (e.g., 60-percent accuracy)
+can still be searched, because numerous words are correct, while the
+important words are probably repeated often enough that they are likely
+to be found correct somewhere. Librarians, however, cannot tolerate this
+situation, though end users seem more willing to use this text for
+searching, provided that NAL indicates that it is unedited. ZIDAR
+concluded that rekeying of text may be the best route to take, in spite
+of numerous problems with quality control and cost.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Modifying an image before performing OCR * NAL's costs per
+page *AM's costs per page and experience with Federal Prison Industries *
+Elements comprising NATDP's costs per page * OCR and structured markup *
+Distinction between the structure of a document and its representation
+when put on the screen or printed *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+HOOTON prefaced the lengthy discussion that followed with several
+comments about modifying an image before one reaches the point of
+performing OCR. For example, in regard to an application containing a
+significant amount of redundant data, such as form-type data, numerous
+companies today are working on various kinds of form renewal, prior to
+going through a recognition process, by using dropout colors. Thus,
+acquiring access to form design or using electronic means are worth
+considering. HOOTON also noted that conversion usually makes or breaks
+one's imaging system. It is extremely important, extremely costly in
+terms of either capital investment or service, and determines the quality
+of the remainder of one's system, because it determines the character of
+the raw material used by the system.
+
+Concerning the four projects undertaken by NAL, two inside and two
+performed by outside contractors, ZIDAR revealed that an in-house service
+bureau executed the first at a cost between $8 and $10 per page for
+everything, including building of the database. The project undertaken
+by the Consultative Group on International Agricultural Research (CGIAR)
+cost approximately $10 per page for the conversion, plus some expenses
+for the software and building of the database. The Acid Rain Project--a
+two-disk set produced by the University of Vermont, consisting of
+Canadian publications on acid rain--cost $6.70 per page for everything,
+including keying of the text, which was double keyed, scanning of the
+images, and building of the database. The in-house project offered
+considerable ease of convenience and greater control of the process. On
+the other hand, the service bureaus know their job and perform it
+expeditiously, because they have more people.
+
+As a useful comparison, ERWAY revealed AM's costs as follows: $0.75
+cents to $0.85 cents per thousand characters, with an average page
+containing 2,700 characters. Requirements for coding and imaging
+increase the costs. Thus, conversion of the text, including the coding,
+costs approximately $3 per page. (This figure does not include the
+imaging and database-building included in the NAL costs.) AM also
+enjoyed a happy experience with Federal Prison Industries, which
+precluded the necessity of going through the request-for-proposal process
+to award a contract, because it is another government agency. The
+prisoners performed AM's rekeying just as well as other service bureaus
+and proved handy as well. AM shipped them the books, which they would
+photocopy on a book-edge scanner. They would perform the markup on
+photocopies, return the books as soon as they were done with them,
+perform the keying, and return the material to AM on WORM disks.
+
+ZIDAR detailed the elements that constitute the previously noted cost of
+approximately $7 per page. Most significant is the editing, correction
+of errors, and spell-checkings, which though they may sound easy to
+perform require, in fact, a great deal of time. Reformatting text also
+takes a while, but a significant amount of NAL's expenses are for equipment,
+which was extremely expensive when purchased because it was one of the few
+systems on the market. The costs of equipment are being amortized over
+five years but are still quite high, nearly $2,000 per month.
+
+HOCKEY raised a general question concerning OCR and the amount of editing
+required (substantial in her experience) to generate the kind of
+structured markup necessary for manipulating the text on the computer or
+loading it into any retrieval system. She wondered if the speakers could
+extend the previous question about the cost-benefit of adding or exerting
+structured markup. ERWAY noted that several OCR systems retain italics,
+bolding, and other spatial formatting. While the material may not be in
+the format desired, these systems possess the ability to remove the
+original materials quickly from the hands of the people performing the
+conversion, as well as to retain that information so that users can work
+with it. HOCKEY rejoined that the current thinking on markup is that one
+should not say that something is italic or bold so much as why it is that
+way. To be sure, one needs to know that something was italicized, but
+how can one get from one to the other? One can map from the structure to
+the typographic representation.
+
+FLEISCHHAUER suggested that, given the 100 million items the Library
+holds, it may not be possible for LC to do more than report that a thing
+was in italics as opposed to why it was italics, although that may be
+desirable in some contexts. Promising to talk a bit during the afternoon
+session about several experiments OCLC performed on automatic recognition
+of document elements, and which they hoped to extend, WEIBEL said that in
+fact one can recognize the major elements of a document with a fairly
+high degree of reliability, at least as good as OCR. STEVENS drew a
+useful distinction between standard, generalized markup (i.e., defining
+for a document-type definition the structure of the document), and what
+he termed a style sheet, which had to do with italics, bolding, and other
+forms of emphasis. Thus, two different components are at work, one being
+the structure of the document itself (its logic), and the other being its
+representation when it is put on the screen or printed.
+
+ ******
+
+SESSION V. APPROACHES TO PREPARING ELECTRONIC TEXTS
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+HOCKEY * Text in ASCII and the representation of electronic text versus
+an image * The need to look at ways of using markup to assist retrieval *
+The need for an encoding format that will be reusable and multifunctional
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Susan HOCKEY, director, Center for Electronic Texts in the Humanities
+(CETH), Rutgers and Princeton Universities, announced that one talk
+(WEIBEL's) was moved into this session from the morning and that David
+Packard was unable to attend. The session would attempt to focus more on
+what one can do with a text in ASCII and the representation of electronic
+text rather than just an image, what one can do with a computer that
+cannot be done with a book or an image. It would be argued that one can
+do much more than just read a text, and from that starting point one can
+use markup and methods of preparing the text to take full advantage of
+the capability of the computer. That would lead to a discussion of what
+the European Community calls REUSABILITY, what may better be termed
+DURABILITY, that is, how to prepare or make a text that will last a long
+time and that can be used for as many applications as possible, which
+would lead to issues of improving intellectual access.
+
+HOCKEY urged the need to look at ways of using markup to facilitate retrieval,
+not just for referencing or to help locate an item that is retrieved, but also to put markup tags in
+a text to help retrieve the thing sought either with linguistic tagging or
+interpretation. HOCKEY also argued that little advancement had occurred in
+the software tools currently available for retrieving and searching text.
+She pressed the desideratum of going beyond Boolean searches and performing
+more sophisticated searching, which the insertion of more markup in the text
+would facilitate. Thinking about electronic texts as opposed to images means
+considering material that will never appear in print form, or print will not
+be its primary form, that is, material which only appears in electronic form.
+HOCKEY alluded to the history and the need for markup and tagging and
+electronic text, which was developed through the use of computers in the
+humanities; as MICHELSON had observed, Father Busa had started in 1949
+to prepare the first-ever text on the computer.
+
+HOCKEY remarked several large projects, particularly in Europe, for the
+compilation of dictionaries, language studies, and language analysis, in
+which people have built up archives of text and have begun to recognize
+the need for an encoding format that will be reusable and multifunctional,
+that can be used not just to print the text, which may be assumed to be a
+byproduct of what one wants to do, but to structure it inside the computer
+so that it can be searched, built into a Hypertext system, etc.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+WEIBEL * OCLC's approach to preparing electronic text: retroconversion,
+keying of texts, more automated ways of developing data * Project ADAPT
+and the CORE Project * Intelligent character recognition does not exist *
+Advantages of SGML * Data should be free of procedural markup;
+descriptive markup strongly advocated * OCLC's interface illustrated *
+Storage requirements and costs for putting a lot of information on line *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Stuart WEIBEL, senior research scientist, Online Computer Library Center,
+Inc. (OCLC), described OCLC's approach to preparing electronic text. He
+argued that the electronic world into which we are moving must
+accommodate not only the future but the past as well, and to some degree
+even the present. Thus, starting out at one end with retroconversion and
+keying of texts, one would like to move toward much more automated ways
+of developing data.
+
+For example, Project ADAPT had to do with automatically converting
+document images into a structured document database with OCR text as
+indexing and also a little bit of automatic formatting and tagging of
+that text. The CORE project hosted by Cornell University, Bellcore,
+OCLC, the American Chemical Society, and Chemical Abstracts, constitutes
+WEIBEL's principal concern at the moment. This project is an example of
+converting text for which one already has a machine-readable version into
+a format more suitable for electronic delivery and database searching.
+(Since Michael LESK had previously described CORE, WEIBEL would say
+little concerning it.) Borrowing a chemical phrase, de novo synthesis,
+WEIBEL cited the Online Journal of Current Clinical Trials as an example
+of de novo electronic publishing, that is, a form in which the primary
+form of the information is electronic.
+
+Project ADAPT, then, which OCLC completed a couple of years ago and in
+fact is about to resume, is a model in which one takes page images either
+in paper or microfilm and converts them automatically to a searchable
+electronic database, either on-line or local. The operating assumption
+is that accepting some blemishes in the data, especially for
+retroconversion of materials, will make it possible to accomplish more.
+Not enough money is available to support perfect conversion.
+
+WEIBEL related several steps taken to perform image preprocessing
+(processing on the image before performing optical character
+recognition), as well as image postprocessing. He denied the existence
+of intelligent character recognition and asserted that what is wanted is
+page recognition, which is a long way off. OCLC has experimented with
+merging of multiple optical character recognition systems that will
+reduce errors from an unacceptable rate of 5 characters out of every
+l,000 to an unacceptable rate of 2 characters out of every l,000, but it
+is not good enough. It will never be perfect.
+
+Concerning the CORE Project, WEIBEL observed that Bellcore is taking the
+topography files, extracting the page images, and converting those
+topography files to SGML markup. LESK hands that data off to OCLC, which
+builds that data into a Newton database, the same system that underlies
+the on-line system in virtually all of the reference products at OCLC.
+The long-term goal is to make the systems interoperable so that not just
+Bellcore's system and OCLC's system can access this data, but other
+systems can as well, and the key to that is the Z39.50 common command
+language and the full-text extension. Z39.50 is fine for MARC records,
+but is not enough to do it for full text (that is, make full texts
+interoperable).
+
+WEIBEL next outlined the critical role of SGML for a variety of purposes,
+for example, as noted by HOCKEY, in the world of extremely large
+databases, using highly structured data to perform field searches.
+WEIBEL argued that by building the structure of the data in (i.e., the
+structure of the data originally on a printed page), it becomes easy to
+look at a journal article even if one cannot read the characters and know
+where the title or author is, or what the sections of that document would be.
+OCLC wants to make that structure explicit in the database, because it will
+be important for retrieval purposes.
+
+The second big advantage of SGML is that it gives one the ability to
+build structure into the database that can be used for display purposes
+without contaminating the data with instructions about how to format
+things. The distinction lies between procedural markup, which tells one
+where to put dots on the page, and descriptive markup, which describes
+the elements of a document.
+
+WEIBEL believes that there should be no procedural markup in the data at
+all, that the data should be completely unsullied by information about
+italics or boldness. That should be left up to the display device,
+whether that display device is a page printer or a screen display device.
+By keeping one's database free of that kind of contamination, one can
+make decisions down the road, for example, reorganize the data in ways
+that are not cramped by built-in notions of what should be italic and
+what should be bold. WEIBEL strongly advocated descriptive markup. As
+an example, he illustrated the index structure in the CORE data. With
+subsequent illustrated examples of markup, WEIBEL acknowledged the common
+complaint that SGML is hard to read in its native form, although markup
+decreases considerably once one gets into the body. Without the markup,
+however, one would not have the structure in the data. One can pass
+markup through a LaTeX processor and convert it relatively easily to a
+printed version of the document.
+
+WEIBEL next illustrated an extremely cluttered screen dump of OCLC's
+system, in order to show as much as possible the inherent capability on
+the screen. (He noted parenthetically that he had become a supporter of
+X-Windows as a result of the progress of the CORE Project.) WEIBEL also
+illustrated the two major parts of the interface: l) a control box that
+allows one to generate lists of items, which resembles a small table of
+contents based on key words one wishes to search, and 2) a document
+viewer, which is a separate process in and of itself. He demonstrated
+how to follow links through the electronic database simply by selecting
+the appropriate button and bringing them up. He also noted problems that
+remain to be accommodated in the interface (e.g., as pointed out by LESK,
+what happens when users do not click on the icon for the figure).
+
+Given the constraints of time, WEIBEL omitted a large number of ancillary
+items in order to say a few words concerning storage requirements and
+what will be required to put a lot of things on line. Since it is
+extremely expensive to reconvert all of this data, especially if it is
+just in paper form (and even if it is in electronic form in typesetting
+tapes), he advocated building journals electronically from the start. In
+that case, if one only has text graphics and indexing (which is all that
+one needs with de novo electronic publishing, because there is no need to
+go back and look at bit-maps of pages), one can get 10,000 journals of
+full text, or almost 6 million pages per year. These pages can be put in
+approximately 135 gigabytes of storage, which is not all that much,
+WEIBEL said. For twenty years, something less than three terabytes would
+be required. WEIBEL calculated the costs of storing this information as
+follows: If a gigabyte costs approximately $1,000, then a terabyte costs
+approximately $1 million to buy in terms of hardware. One also needs a
+building to put it in and a staff like OCLC to handle that information.
+So, to support a terabyte, multiply by five, which gives $5 million per
+year for a supported terabyte of data.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Tapes saved by ACS are the typography files originally
+supporting publication of the journal * Cost of building tagged text into
+the database *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+During the question-and-answer period that followed WEIBEL's
+presentation, these clarifications emerged. The tapes saved by the
+American Chemical Society are the typography files that originally
+supported the publication of the journal. Although they are not tagged
+in SGML, they are tagged in very fine detail. Every single sentence is
+marked, all the registry numbers, all the publications issues, dates, and
+volumes. No cost figures on tagging material on a per-megabyte basis
+were available. Because ACS's typesetting system runs from tagged text,
+there is no extra cost per article. It was unknown what it costs ACS to
+keyboard the tagged text rather than just keyboard the text in the
+cheapest process. In other words, since one intends to publish things
+and will need to build tagged text into a typography system in any case,
+if one does that in such a way that it can drive not only typography but
+an electronic system (which is what ACS intends to do--move to SGML
+publishing), the marginal cost is zero. The marginal cost represents the
+cost of building tagged text into the database, which is small.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+SPERBERG-McQUEEN * Distinction between texts and computers * Implications
+of recognizing that all representation is encoding * Dealing with
+complicated representations of text entails the need for a grammar of
+documents * Variety of forms of formal grammars * Text as a bit-mapped
+image does not represent a serious attempt to represent text in
+electronic form * SGML, the TEI, document-type declarations, and the
+reusability and longevity of data * TEI conformance explicitly allows
+extension or modification of the TEI tag set * Administrative background
+of the TEI * Several design goals for the TEI tag set * An absolutely
+fixed requirement of the TEI Guidelines * Challenges the TEI has
+attempted to face * Good texts not beyond economic feasibility * The
+issue of reproducibility or processability * The issue of mages as
+simulacra for the text redux * One's model of text determines what one's
+software can do with a text and has economic consequences *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Prior to speaking about SGML and markup, Michael SPERBERG-McQUEEN, editor,
+Text Encoding Initiative (TEI), University of Illinois-Chicago, first drew
+a distinction between texts and computers: Texts are abstract cultural
+and linguistic objects while computers are complicated physical devices,
+he said. Abstract objects cannot be placed inside physical devices; with
+computers one can only represent text and act upon those representations.
+
+The recognition that all representation is encoding, SPERBERG-McQUEEN
+argued, leads to the recognition of two things: 1) The topic description
+for this session is slightly misleading, because there can be no discussion
+of pros and cons of text-coding unless what one means is pros and cons of
+working with text with computers. 2) No text can be represented in a
+computer without some sort of encoding; images are one way of encoding text,
+ASCII is another, SGML yet another. There is no encoding without some
+information loss, that is, there is no perfect reproduction of a text that
+allows one to do away with the original. Thus, the question becomes,
+What is the most useful representation of text for a serious work?
+This depends on what kind of serious work one is talking about.
+
+The projects demonstrated the previous day all involved highly complex
+information and fairly complex manipulation of the textual material.
+In order to use that complicated information, one has to calculate it
+slowly or manually and store the result. It needs to be stored, therefore,
+as part of one's representation of the text. Thus, one needs to store the
+structure in the text. To deal with complicated representations of text,
+one needs somehow to control the complexity of the representation of a text;
+that means one needs a way of finding out whether a document and an
+electronic representation of a document is legal or not; and that
+means one needs a grammar of documents.
+
+SPERBERG-McQUEEN discussed the variety of forms of formal grammars,
+implicit and explicit, as applied to text, and their capabilities. He
+argued that these grammars correspond to different models of text that
+different developers have. For example, one implicit model of the text
+is that there is no internal structure, but just one thing after another,
+a few characters and then perhaps a start-title command, and then a few
+more characters and an end-title command. SPERBERG-McQUEEN also
+distinguished several kinds of text that have a sort of hierarchical
+structure that is not very well defined, which, typically, corresponds
+to grammars that are not very well defined, as well as hierarchies that
+are very well defined (e.g., the Thesaurus Linguae Graecae) and extremely
+complicated things such as SGML, which handle strictly hierarchical data
+very nicely.
+
+SPERBERG-McQUEEN conceded that one other model not illustrated on his two
+displays was the model of text as a bit-mapped image, an image of a page,
+and confessed to having been converted to a limited extent by the
+Workshop to the view that electronic images constitute a promising,
+probably superior alternative to microfilming. But he was not convinced
+that electronic images represent a serious attempt to represent text in
+electronic form. Many of their problems stem from the fact that they are
+not direct attempts to represent the text but attempts to represent the
+page, thus making them representations of representations.
+
+In this situation of increasingly complicated textual information and the
+need to control that complexity in a useful way (which begs the question
+of the need for good textual grammars), one has the introduction of SGML.
+With SGML, one can develop specific document-type declarations
+for specific text types or, as with the TEI, attempts to generate
+general document-type declarations that can handle all sorts of text.
+The TEI is an attempt to develop formats for text representation that
+will ensure the kind of reusability and longevity of data discussed earlier.
+It offers a way to stay alive in the state of permanent technological
+revolution.
+
+It has been a continuing challenge in the TEI to create document grammars
+that do some work in controlling the complexity of the textual object but
+also allowing one to represent the real text that one will find.
+Fundamental to the notion of the TEI is that TEI conformance allows one
+the ability to extend or modify the TEI tag set so that it fits the text
+that one is attempting to represent.
+
+SPERBERG-McQUEEN next outlined the administrative background of the TEI.
+The TEI is an international project to develop and disseminate guidelines
+for the encoding and interchange of machine-readable text. It is
+sponsored by the Association for Computers in the Humanities, the
+Association for Computational Linguistics, and the Association for
+Literary and Linguistic Computing. Representatives of numerous other
+professional societies sit on its advisory board. The TEI has a number
+of affiliated projects that have provided assistance by testing drafts of
+the guidelines.
+
+Among the design goals for the TEI tag set, the scheme first of all must
+meet the needs of research, because the TEI came out of the research
+community, which did not feel adequately served by existing tag sets.
+The tag set must be extensive as well as compatible with existing and
+emerging standards. In 1990, version 1.0 of the Guidelines was released
+(SPERBERG-McQUEEN illustrated their contents).
+
+SPERBERG-McQUEEN noted that one problem besetting electronic text has
+been the lack of adequate internal or external documentation for many
+existing electronic texts. The TEI guidelines as currently formulated
+contain few fixed requirements, but one of them is this: There must
+always be a document header, an in-file SGML tag that provides
+1) a bibliographic description of the electronic object one is talking
+about (that is, who included it, when, what for, and under which title);
+and 2) the copy text from which it was derived, if any. If there was
+no copy text or if the copy text is unknown, then one states as much.
+Version 2.0 of the Guidelines was scheduled to be completed in fall 1992
+and a revised third version is to be presented to the TEI advisory board
+for its endorsement this coming winter. The TEI itself exists to provide
+a markup language, not a marked-up text.
+
+Among the challenges the TEI has attempted to face is the need for a
+markup language that will work for existing projects, that is, handle the
+level of markup that people are using now to tag only chapter, section,
+and paragraph divisions and not much else. At the same time, such a
+language also will be able to scale up gracefully to handle the highly
+detailed markup which many people foresee as the future destination of
+much electronic text, and which is not the future destination but the
+present home of numerous electronic texts in specialized areas.
+
+SPERBERG-McQUEEN dismissed the lowest-common-denominator approach as
+unable to support the kind of applications that draw people who have
+never been in the public library regularly before, and make them come
+back. He advocated more interesting text and more intelligent text.
+Asserting that it is not beyond economic feasibility to have good texts,
+SPERBERG-McQUEEN noted that the TEI Guidelines listing 200-odd tags
+contains tags that one is expected to enter every time the relevant
+textual feature occurs. It contains all the tags that people need now,
+and it is not expected that everyone will tag things in the same way.
+
+The question of how people will tag the text is in large part a function
+of their reaction to what SPERBERG-McQUEEN termed the issue of
+reproducibility. What one needs to be able to reproduce are the things
+one wants to work with. Perhaps a more useful concept than that of
+reproducibility or recoverability is that of processability, that is,
+what can one get from an electronic text without reading it again
+in the original. He illustrated this contention with a page from
+Jan Comenius's bilingual Introduction to Latin.
+
+SPERBERG-McQUEEN returned at length to the issue of images as simulacra
+for the text, in order to reiterate his belief that in the long run more
+than images of pages of particular editions of the text are needed,
+because just as second-generation photocopies and second-generation
+microfilm degenerate, so second-generation representations tend to
+degenerate, and one tends to overstress some relatively trivial aspects
+of the text such as its layout on the page, which is not always
+significant, despite what the text critics might say, and slight other
+pieces of information such as the very important lexical ties between the
+English and Latin versions of Comenius's bilingual text, for example.
+Moreover, in many crucial respects it is easy to fool oneself concerning
+what a scanned image of the text will accomplish. For example, in order
+to study the transmission of texts, information concerning the text
+carrier is necessary, which scanned images simply do not always handle.
+Further, even the high-quality materials being produced at Cornell use
+much of the information that one would need if studying those books as
+physical objects. It is a choice that has been made. It is an arguably
+justifiable choice, but one does not know what color those pen strokes in
+the margin are or whether there was a stain on the page, because it has
+been filtered out. One does not know whether there were rips in the page
+because they do not show up, and on a couple of the marginal marks one
+loses half of the mark because the pen is very light and the scanner
+failed to pick it up, and so what is clearly a checkmark in the margin of
+the original becomes a little scoop in the margin of the facsimile.
+Standard problems for facsimile editions, not new to electronics, but
+also true of light-lens photography, and are remarked here because it is
+important that we not fool ourselves that even if we produce a very nice
+image of this page with good contrast, we are not replacing the
+manuscript any more than microfilm has replaced the manuscript.
+
+The TEI comes from the research community, where its first allegiance
+lies, but it is not just an academic exercise. It has relevance far
+beyond those who spend all of their time studying text, because one's
+model of text determines what one's software can do with a text. Good
+models lead to good software. Bad models lead to bad software. That has
+economic consequences, and it is these economic consequences that have
+led the European Community to help support the TEI, and that will lead,
+SPERBERG-McQUEEN hoped, some software vendors to realize that if they
+provide software with a better model of the text they can make a killing.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Implications of different DTDs and tag sets * ODA versus SGML *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+During the discussion that followed, several additional points were made.
+Neither AAP (i.e., Association of American Publishers) nor CALS (i.e.,
+Computer-aided Acquisition and Logistics Support) has a document-type
+definition for ancient Greek drama, although the TEI will be able to
+handle that. Given this state of affairs and assuming that the
+technical-journal producers and the commercial vendors decide to use the
+other two types, then an institution like the Library of Congress, which
+might receive all of their publications, would have to be able to handle
+three different types of document definitions and tag sets and be able to
+distinguish among them.
+
+Office Document Architecture (ODA) has some advantages that flow from its
+tight focus on office documents and clear directions for implementation.
+Much of the ODA standard is easier to read and clearer at first reading
+than the SGML standard, which is extremely general. What that means is
+that if one wants to use graphics in TIFF and ODA, one is stuck, because
+ODA defines graphics formats while TIFF does not, whereas SGML says the
+world is not waiting for this work group to create another graphics format.
+What is needed is an ability to use whatever graphics format one wants.
+
+The TEI provides a socket that allows one to connect the SGML document to
+the graphics. The notation that the graphics are in is clearly a choice
+that one needs to make based on her or his environment, and that is one
+advantage. SGML is less megalomaniacal in attempting to define formats
+for all kinds of information, though more megalomaniacal in attempting to
+cover all sorts of documents. The other advantage is that the model of
+text represented by SGML is simply an order of magnitude richer and more
+flexible than the model of text offered by ODA. Both offer hierarchical
+structures, but SGML recognizes that the hierarchical model of the text
+that one is looking at may not have been in the minds of the designers,
+whereas ODA does not.
+
+ODA is not really aiming for the kind of document that the TEI wants to
+encompass. The TEI can handle the kind of material ODA has, as well as a
+significantly broader range of material. ODA seems to be very much
+focused on office documents, which is what it started out being called--
+office document architecture.
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+CALALUCA * Text-encoding from a publisher's perspective *
+Responsibilities of a publisher * Reproduction of Migne's Latin series
+whole and complete with SGML tags based on perceived need and expected
+use * Particular decisions arising from the general decision to produce
+and publish PLD *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+The final speaker in this session, Eric CALALUCA, vice president,
+Chadwyck-Healey, Inc., spoke from the perspective of a publisher re
+text-encoding, rather than as one qualified to discuss methods of
+encoding data, and observed that the presenters sitting in the room,
+whether they had chosen to or not, were acting as publishers: making
+choices, gathering data, gathering information, and making assessments.
+CALALUCA offered the hard-won conviction that in publishing very large
+text files (such as PLD), one cannot avoid making personal judgments of
+appropriateness and structure.
+
+In CALALUCA's view, encoding decisions stem from prior judgments. Two
+notions have become axioms for him in the consideration of future sources
+for electronic publication: 1) electronic text publishing is as personal
+as any other kind of publishing, and questions of if and how to encode
+the data are simply a consequence of that prior decision; 2) all
+personal decisions are open to criticism, which is unavoidable.
+
+CALALUCA rehearsed his role as a publisher or, better, as an intermediary
+between what is viewed as a sound idea and the people who would make use
+of it. Finding the specialist to advise in this process is the core of
+that function. The publisher must monitor and hug the fine line between
+giving users what they want and suggesting what they might need. One
+responsibility of a publisher is to represent the desires of scholars and
+research librarians as opposed to bullheadedly forcing them into areas
+they would not choose to enter.
+
+CALALUCA likened the questions being raised today about data structure
+and standards to the decisions faced by the Abbe Migne himself during
+production of the Patrologia series in the mid-nineteenth century.
+Chadwyck-Healey's decision to reproduce Migne's Latin series whole and
+complete with SGML tags was also based upon a perceived need and an
+expected use. In the same way that Migne's work came to be far more than
+a simple handbook for clerics, PLD is already far more than a database
+for theologians. It is a bedrock source for the study of Western
+civilization, CALALUCA asserted.
+
+In regard to the decision to produce and publish PLD, the editorial board
+offered direct judgments on the question of appropriateness of these
+texts for conversion, their encoding and their distribution, and
+concluded that the best possible project was one that avoided overt
+intrusions or exclusions in so important a resource. Thus, the general
+decision to transmit the original collection as clearly as possible with
+the widest possible avenues for use led to other decisions: 1) To encode
+the data or not, SGML or not, TEI or not. Again, the expected user
+community asserted the need for normative tagging structures of important
+humanities texts, and the TEI seemed the most appropriate structure for
+that purpose. Research librarians, who are trained to view the larger
+impact of electronic text sources on 80 or 90 or 100 doctoral
+disciplines, loudly approved the decision to include tagging. They see
+what is coming better than the specialist who is completely focused on
+one edition of Ambrose's De Anima, and they also understand that the
+potential uses exceed present expectations. 2) What will be tagged and
+what will not. Once again, the board realized that one must tag the
+obvious. But in no way should one attempt to identify through encoding
+schemes every single discrete area of a text that might someday be
+searched. That was another decision. Searching by a column number, an
+author, a word, a volume, permitting combination searches, and tagging
+notations seemed logical choices as core elements. 3) How does one make
+the data available? Tying it to a CD-ROM edition creates limitations,
+but a magnetic tape file that is very large, is accompanied by the
+encoding specifications, and that allows one to make local modifications
+also allows one to incorporate any changes one may desire within the
+bounds of private research, though exporting tag files from a CD-ROM
+could serve just as well. Since no one on the board could possibly
+anticipate each and every way in which a scholar might choose to mine
+this data bank, it was decided to satisfy the basics and make some
+provisions for what might come. 4) Not to encode the database would rob
+it of the interchangeability and portability these important texts should
+accommodate. For CALALUCA, the extensive options presented by full-text
+searching require care in text selection and strongly support encoding of
+data to facilitate the widest possible search strategies. Better
+software can always be created, but summoning the resources, the people,
+and the energy to reconvert the text is another matter.
+
+PLD is being encoded, captured, and distributed, because to
+Chadwyck-Healey and the board it offers the widest possible array of
+future research applications that can be seen today. CALALUCA concluded
+by urging the encoding of all important text sources in whatever way
+seems most appropriate and durable at the time, without blanching at the
+thought that one's work may require emendation in the future. (Thus,
+Chadwyck-Healey produced a very large humanities text database before the
+final release of the TEI Guidelines.)
+
+ ******
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+DISCUSSION * Creating texts with markup advocated * Trends in encoding *
+The TEI and the issue of interchangeability of standards * A
+misconception concerning the TEI * Implications for an institution like
+LC in the event that a multiplicity of DTDs develops * Producing images
+as a first step towards possible conversion to full text through
+character recognition * The AAP tag sets as a common starting point and
+the need for caution *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+HOCKEY prefaced the discussion that followed with several comments in
+favor of creating texts with markup and on trends in encoding. In the
+future, when many more texts are available for on-line searching, real
+problems in finding what is wanted will develop, if one is faced with
+millions of words of data. It therefore becomes important to consider
+putting markup in texts to help searchers home in on the actual things
+they wish to retrieve. Various approaches to refining retrieval methods
+toward this end include building on a computer version of a dictionary
+and letting the computer look up words in it to obtain more information
+about the semantic structure or semantic field of a word, its grammatical
+structure, and syntactic structure.
+
+HOCKEY commented on the present keen interest in the encoding world
+in creating: 1) machine-readable versions of dictionaries that can be
+initially tagged in SGML, which gives a structure to the dictionary entry;
+these entries can then be converted into a more rigid or otherwise
+different database structure inside the computer, which can be treated as
+a dynamic tool for searching mechanisms; 2) large bodies of text to study
+the language. In order to incorporate more sophisticated mechanisms,
+more about how words behave needs to be known, which can be learned in
+part from information in dictionaries. However, the last ten years have
+seen much interest in studying the structure of printed dictionaries
+converted into computer-readable form. The information one derives about
+many words from those is only partial, one or two definitions of the
+common or the usual meaning of a word, and then numerous definitions of
+unusual usages. If the computer is using a dictionary to help retrieve
+words in a text, it needs much more information about the common usages,
+because those are the ones that occur over and over again. Hence the
+current interest in developing large bodies of text in computer-readable
+form in order to study the language. Several projects are engaged in
+compiling, for example, 100 million words. HOCKEY described one with
+which she was associated briefly at Oxford University involving
+compilation of 100 million words of British English: about 10 percent of
+that will contain detailed linguistic tagging encoded in SGML; it will
+have word class taggings, with words identified as nouns, verbs,
+adjectives, or other parts of speech. This tagging can then be used by
+programs which will begin to learn a bit more about the structure of the
+language, and then, can go to tag more text.
+
+HOCKEY said that the more that is tagged accurately, the more one can
+refine the tagging process and thus the bigger body of text one can build
+up with linguistic tagging incorporated into it. Hence, the more tagging
+or annotation there is in the text, the more one may begin to learn about
+language and the more it will help accomplish more intelligent OCR. She
+recommended the development of software tools that will help one begin to
+understand more about a text, which can then be applied to scanning
+images of that text in that format and to using more intelligence to help
+one interpret or understand the text.
+
+HOCKEY posited the need to think about common methods of text-encoding
+for a long time to come, because building these large bodies of text is
+extremely expensive and will only be done once.
+
+In the more general discussion on approaches to encoding that followed,
+these points were made:
+
+BESSER identified the underlying problem with standards that all have to
+struggle with in adopting a standard, namely, the tension between a very
+highly defined standard that is very interchangeable but does not work
+for everyone because something is lacking, and a standard that is less
+defined, more open, more adaptable, but less interchangeable. Contending
+that the way in which people use SGML is not sufficiently defined, BESSER
+wondered 1) if people resist the TEI because they think it is too defined
+in certain things they do not fit into, and 2) how progress with
+interchangeability can be made without frightening people away.
+
+SPERBERG-McQUEEN replied that the published drafts of the TEI had met
+with surprisingly little objection on the grounds that they do not allow
+one to handle X or Y or Z. Particular concerns of the affiliated
+projects have led, in practice, to discussions of how extensions are to
+be made; the primary concern of any project has to be how it can be
+represented locally, thus making interchange secondary. The TEI has
+received much criticism based on the notion that everything in it is
+required or even recommended, which, as it happens, is a misconception
+from the beginning, because none of it is required and very little is
+actually actively recommended for all cases, except that one document
+one's source.
+
+SPERBERG-McQUEEN agreed with BESSER about this trade-off: all the
+projects in a set of twenty TEI-conformant projects will not necessarily
+tag the material in the same way. One result of the TEI will be that the
+easiest problems will be solved--those dealing with the external form of
+the information; but the problem that is hardest in interchange is that
+one is not encoding what another wants, and vice versa. Thus, after
+the adoption of a common notation, the differences in the underlying
+conceptions of what is interesting about texts become more visible.
+The success of a standard like the TEI will lie in the ability of
+the recipient of interchanged texts to use some of what it contains
+and to add the information that was not encoded that one wants, in a
+layered way, so that texts can be gradually enriched and one does not
+have to put in everything all at once. Hence, having a well-behaved
+markup scheme is important.
+
+STEVENS followed up on the paradoxical analogy that BESSER alluded to in
+the example of the MARC records, namely, the formats that are the same
+except that they are different. STEVENS drew a parallel between
+document-type definitions and MARC records for books and serials and maps,
+where one has a tagging structure and there is a text-interchange.
+STEVENS opined that the producers of the information will set the terms
+for the standard (i.e., develop document-type definitions for the users
+of their products), creating a situation that will be problematical for
+an institution like the Library of Congress, which will have to deal with
+the DTDs in the event that a multiplicity of them develops. Thus,
+numerous people are seeking a standard but cannot find the tag set that
+will be acceptable to them and their clients. SPERBERG-McQUEEN agreed
+with this view, and said that the situation was in a way worse: attempting
+to unify arbitrary DTDs resembled attempting to unify a MARC record with a
+bibliographic record done according to the Prussian instructions.
+According to STEVENS, this situation occurred very early in the process.
+
+WATERS recalled from early discussions on Project Open Book the concern
+of many people that merely by producing images, POB was not really
+enhancing intellectual access to the material. Nevertheless, not wishing
+to overemphasize the opposition between imaging and full text, WATERS
+stated that POB views getting the images as a first step toward possibly
+converting to full text through character recognition, if the technology
+is appropriate. WATERS also emphasized that encoding is involved even
+with a set of images.
+
+SPERBERG-McQUEEN agreed with WATERS that one can create an SGML document
+consisting wholly of images. At first sight, organizing graphic images
+with an SGML document may not seem to offer great advantages, but the
+advantages of the scheme WATERS described would be precisely that
+ability to move into something that is more of a multimedia document:
+a combination of transcribed text and page images. WEIBEL concurred in
+this judgment, offering evidence from Project ADAPT, where a page is
+divided into text elements and graphic elements, and in fact the text
+elements are organized by columns and lines. These lines may be used as
+the basis for distributing documents in a network environment. As one
+develops software intelligent enough to recognize what those elements
+are, it makes sense to apply SGML to an image initially, that may, in
+fact, ultimately become more and more text, either through OCR or edited
+OCR or even just through keying. For WATERS, the labor of composing the
+document and saying this set of documents or this set of images belongs
+to this document constitutes a significant investment.
+
+WEIBEL also made the point that the AAP tag sets, while not excessively
+prescriptive, offer a common starting point; they do not define the
+structure of the documents, though. They have some recommendations about
+DTDs one could use as examples, but they do just suggest tag sets. For
+example, the CORE project attempts to use the AAP markup as much as
+possible, but there are clearly areas where structure must be added.
+That in no way contradicts the use of AAP tag sets.
+
+SPERBERG-McQUEEN noted that the TEI prepared a long working paper early
+on about the AAP tag set and what it lacked that the TEI thought it
+needed, and a fairly long critique of the naming conventions, which has
+led to a very different style of naming in the TEI. He stressed the
+importance of the opposition between prescriptive markup, the kind that a
+publisher or anybody can do when producing documents de novo, and
+descriptive markup, in which one has to take what the text carrier
+provides. In these particular tag sets it is easy to overemphasize this
+opposition, because the AAP tag set is extremely flexible. Even if one
+just used the DTDs, they allow almost anything to appear almost anywhere.
+
+ ******
+
+SESSION VI. COPYRIGHT ISSUES
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+PETERS * Several cautions concerning copyright in an electronic
+environment * Review of copyright law in the United States * The notion
+of the public good and the desirability of incentives to promote it *
+What copyright protects * Works not protected by copyright * The rights
+of copyright holders * Publishers' concerns in today's electronic
+environment * Compulsory licenses * The price of copyright in a digital
+medium and the need for cooperation * Additional clarifications * Rough
+justice oftentimes the outcome in numerous copyright matters * Copyright
+in an electronic society * Copyright law always only sets up the
+boundaries; anything can be changed by contract *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+Marybeth PETERS, policy planning adviser to the Register of Copyrights,
+Library of Congress, made several general comments and then opened the
+floor to discussion of subjects of interest to the audience.
+
+Having attended several sessions in an effort to gain a sense of what
+people did and where copyright would affect their lives, PETERS expressed
+the following cautions:
+
+ * If one takes and converts materials and puts them in new forms,
+ then, from a copyright point of view, one is creating something and
+ will receive some rights.
+
+ * However, if what one is converting already exists, a question
+ immediately arises about the status of the materials in question.
+
+ * Putting something in the public domain in the United States offers
+ some freedom from anxiety, but distributing it throughout the world
+ on a network is another matter, even if one has put it in the public
+ domain in the United States. Re foreign laws, very frequently a
+ work can be in the public domain in the United States but protected
+ in other countries. Thus, one must consider all of the places a
+ work may reach, lest one unwittingly become liable to being faced
+ with a suit for copyright infringement, or at least a letter
+ demanding discussion of what one is doing.
+
+PETERS reviewed copyright law in the United States. The U.S.
+Constitution effectively states that Congress has the power to enact
+copyright laws for two purposes: 1) to encourage the creation and
+dissemination of intellectual works for the good of society as a whole;
+and, significantly, 2) to give creators and those who package and
+disseminate materials the economic rewards that are due them.
+
+Congress strives to strike a balance, which at times can become an
+emotional issue. The United States has never accepted the notion of the
+natural right of an author so much as it has accepted the notion of the
+public good and the desirability of incentives to promote it. This state
+of affairs, however, has created strains on the international level and
+is the reason for several of the differences in the laws that we have.
+Today the United States protects almost every kind of work that can be
+called an expression of an author. The standard for gaining copyright
+protection is simply originality. This is a low standard and means that
+a work is not copied from something else, as well as shows a certain
+minimal amount of authorship. One can also acquire copyright protection
+for making a new version of preexisting material, provided it manifests
+some spark of creativity.
+
+However, copyright does not protect ideas, methods, systems--only the way
+that one expresses those things. Nor does copyright protect anything
+that is mechanical, anything that does not involve choice, or criteria
+concerning whether or not one should do a thing. For example, the
+results of a process called declicking, in which one mechanically removes
+impure sounds from old recordings, are not copyrightable. On the other
+hand, the choice to record a song digitally and to increase the sound of
+violins or to bring up the tympani constitutes the results of conversion
+that are copyrightable. Moreover, if a work is protected by copyright in
+the United States, one generally needs the permission of the copyright
+owner to convert it. Normally, who will own the new--that is, converted-
+-material is a matter of contract. In the absence of a contract, the
+person who creates the new material is the author and owner. But people
+do not generally think about the copyright implications until after the
+fact. PETERS stressed the need when dealing with copyrighted works to
+think about copyright in advance. One's bargaining power is much greater
+up front than it is down the road.
+
+PETERS next discussed works not protected by copyright, for example, any
+work done by a federal employee as part of his or her official duties is
+in the public domain in the United States. The issue is not wholly free
+of doubt concerning whether or not the work is in the public domain
+outside the United States. Other materials in the public domain include:
+any works published more than seventy-five years ago, and any work
+published in the United States more than twenty-eight years ago, whose
+copyright was not renewed. In talking about the new technology and
+putting material in a digital form to send all over the world, PETERS
+cautioned, one must keep in mind that while the rights may not be an
+issue in the United States, they may be in different parts of the world,
+where most countries previously employed a copyright term of the life of
+the author plus fifty years.
+
+PETERS next reviewed the economics of copyright holding. Simply,
+economic rights are the rights to control the reproduction of a work in
+any form. They belong to the author, or in the case of a work made for
+hire, the employer. The second right, which is critical to conversion,
+is the right to change a work. The right to make new versions is perhaps
+one of the most significant rights of authors, particularly in an
+electronic world. The third right is the right to publish the work and
+the right to disseminate it, something that everyone who deals in an
+electronic medium needs to know. The basic rule is if a copy is sold,
+all rights of distribution are extinguished with the sale of that copy.
+The key is that it must be sold. A number of companies overcome this
+obstacle by leasing or renting their product. These companies argue that
+if the material is rented or leased and not sold, they control the uses
+of a work. The fourth right, and one very important in a digital world,
+is a right of public performance, which means the right to show the work
+sequentially. For example, copyright owners control the showing of a
+CD-ROM product in a public place such as a public library. The reverse
+side of public performance is something called the right of public
+display. Moral rights also exist, which at the federal level apply only
+to very limited visual works of art, but in theory may apply under
+contract and other principles. Moral rights may include the right of an
+author to have his or her name on a work, the right of attribution, and
+the right to object to distortion or mutilation--the right of integrity.
+
+The way copyright law is worded gives much latitude to activities such as
+preservation; to use of material for scholarly and research purposes when
+the user does not make multiple copies; and to the generation of
+facsimile copies of unpublished works by libraries for themselves and
+other libraries. But the law does not allow anyone to become the
+distributor of the product for the entire world. In today's electronic
+environment, publishers are extremely concerned that the entire world is
+networked and can obtain the information desired from a single copy in a
+single library. Hence, if there is to be only one sale, which publishers
+may choose to live with, they will obtain their money in other ways, for
+example, from access and use. Hence, the development of site licenses
+and other kinds of agreements to cover what publishers believe they
+should be compensated for. Any solution that the United States takes
+today has to consider the international arena.
+
+Noting that the United States is a member of the Berne Convention and
+subscribes to its provisions, PETERS described the permissions process.
+She also defined compulsory licenses. A compulsory license, of which the
+United States has had a few, builds into the law the right to use a work
+subject to certain terms and conditions. In the international arena,
+however, the ability to use compulsory licenses is extremely limited.
+Thus, clearinghouses and other collectives comprise one option that has
+succeeded in providing for use of a work. Often overlooked when one
+begins to use copyrighted material and put products together is how
+expensive the permissions process and managing it is. According to
+PETERS, the price of copyright in a digital medium, whatever solution is
+worked out, will include managing and assembling the database. She
+strongly recommended that publishers and librarians or people with
+various backgrounds cooperate to work out administratively feasible
+systems, in order to produce better results.
+
+In the lengthy question-and-answer period that followed PETERS's
+presentation, the following points emerged:
+
+ * The Copyright Office maintains that anything mechanical and
+ totally exhaustive probably is not protected. In the event that
+ what an individual did in developing potentially copyrightable
+ material is not understood, the Copyright Office will ask about the
+ creative choices the applicant chose to make or not to make. As a
+ practical matter, if one believes she or he has made enough of those
+ choices, that person has a right to assert a copyright and someone
+ else must assert that the work is not copyrightable. The more
+ mechanical, the more automatic, a thing is, the less likely it is to
+ be copyrightable.
+
+ * Nearly all photographs are deemed to be copyrightable, but no one
+ worries about them much, because everyone is free to take the same
+ image. Thus, a photographic copyright represents what is called a
+ "thin" copyright. The photograph itself must be duplicated, in
+ order for copyright to be violated.
+
+ * The Copyright Office takes the position that X-rays are not
+ copyrightable because they are mechanical. It can be argued
+ whether or not image enhancement in scanning can be protected. One
+ must exercise care with material created with public funds and
+ generally in the public domain. An article written by a federal
+ employee, if written as part of official duties, is not
+ copyrightable. However, control over a scientific article written
+ by a National Institutes of Health grantee (i.e., someone who
+ receives money from the U.S. government), depends on NIH policy. If
+ the government agency has no policy (and that policy can be
+ contained in its regulations, the contract, or the grant), the
+ author retains copyright. If a provision of the contract, grant, or
+ regulation states that there will be no copyright, then it does not
+ exist. When a work is created, copyright automatically comes into
+ existence unless something exists that says it does not.
+
+ * An enhanced electronic copy of a print copy of an older reference
+ work in the public domain that does not contain copyrightable new
+ material is a purely mechanical rendition of the original work, and
+ is not copyrightable.
+
+ * Usually, when a work enters the public domain, nothing can remove
+ it. For example, Congress recently passed into law the concept of
+ automatic renewal, which means that copyright on any work published
+ between l964 and l978 does not have to be renewed in order to
+ receive a seventy-five-year term. But any work not renewed before
+ 1964 is in the public domain.
+
+ * Concerning whether or not the United States keeps track of when
+ authors die, nothing was ever done, nor is anything being done at
+ the moment by the Copyright Office.
+
+ * Software that drives a mechanical process is itself copyrightable.
+ If one changes platforms, the software itself has a copyright. The
+ World Intellectual Property Organization will hold a symposium 28
+ March through 2 April l993, at Harvard University, on digital
+ technology, and will study this entire issue. If one purchases a
+ computer software package, such as MacPaint, and creates something
+ new, one receives protection only for that which has been added.
+
+PETERS added that often in copyright matters, rough justice is the
+outcome, for example, in collective licensing, ASCAP (i.e., American
+Society of Composers, Authors, and Publishers), and BMI (i.e., Broadcast
+Music, Inc.), where it may seem that the big guys receive more than their
+due. Of course, people ought not to copy a creative product without
+paying for it; there should be some compensation. But the truth of the
+world, and it is not a great truth, is that the big guy gets played on
+the radio more frequently than the little guy, who has to do much more
+until he becomes a big guy. That is true of every author, every
+composer, everyone, and, unfortunately, is part of life.
+
+Copyright always originates with the author, except in cases of works
+made for hire. (Most software falls into this category.) When an author
+sends his article to a journal, he has not relinquished copyright, though
+he retains the right to relinquish it. The author receives absolutely
+everything. The less prominent the author, the more leverage the
+publisher will have in contract negotiations. In order to transfer the
+rights, the author must sign an agreement giving them away.
+
+In an electronic society, it is important to be able to license a writer
+and work out deals. With regard to use of a work, it usually is much
+easier when a publisher holds the rights. In an electronic era, a real
+problem arises when one is digitizing and making information available.
+PETERS referred again to electronic licensing clearinghouses. Copyright
+ought to remain with the author, but as one moves forward globally in the
+electronic arena, a middleman who can handle the various rights becomes
+increasingly necessary.
+
+The notion of copyright law is that it resides with the individual, but
+in an on-line environment, where a work can be adapted and tinkered with
+by many individuals, there is concern. If changes are authorized and
+there is no agreement to the contrary, the person who changes a work owns
+the changes. To put it another way, the person who acquires permission
+to change a work technically will become the author and the owner, unless
+some agreement to the contrary has been made. It is typical for the
+original publisher to try to control all of the versions and all of the
+uses. Copyright law always only sets up the boundaries. Anything can be
+changed by contract.
+
+ ******
+
+SESSION VII. CONCLUSION
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+GENERAL DISCUSSION * Two questions for discussion * Different emphases in
+the Workshop * Bringing the text and image partisans together *
+Desiderata in planning the long-term development of something * Questions
+surrounding the issue of electronic deposit * Discussion of electronic
+deposit as an allusion to the issue of standards * Need for a directory
+of preservation projects in digital form and for access to their
+digitized files * CETH's catalogue of machine-readable texts in the
+humanities * What constitutes a publication in the electronic world? *
+Need for LC to deal with the concept of on-line publishing * LC's Network
+Development Office exploring the limits of MARC as a standard in terms
+of handling electronic information * Magnitude of the problem and the
+need for distributed responsibility in order to maintain and store
+electronic information * Workshop participants to be viewed as a starting
+point * Development of a network version of AM urged * A step toward AM's
+construction of some sort of apparatus for network access * A delicate
+and agonizing policy question for LC * Re the issue of electronic
+deposit, LC urged to initiate a catalytic process in terms of distributed
+responsibility * Suggestions for cooperative ventures * Commercial
+publishers' fears * Strategic questions for getting the image and text
+people to think through long-term cooperation * Clarification of the
+driving force behind both the Perseus and the Cornell Xerox projects *
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+In his role as moderator of the concluding session, GIFFORD raised two
+questions he believed would benefit from discussion: 1) Are there enough
+commonalities among those of us that have been here for two days so that
+we can see courses of action that should be taken in the future? And, if
+so, what are they and who might take them? 2) Partly derivative from
+that, but obviously very dangerous to LC as host, do you see a role for
+the Library of Congress in all this? Of course, the Library of Congress
+holds a rather special status in a number of these matters, because it is
+not perceived as a player with an economic stake in them, but are there
+roles that LC can play that can help advance us toward where we are heading?
+
+Describing himself as an uninformed observer of the technicalities of the
+last two days, GIFFORD detected three different emphases in the Workshop:
+1) people who are very deeply committed to text; 2) people who are almost
+passionate about images; and 3) a few people who are very committed to
+what happens to the networks. In other words, the new networking
+dimension, the accessibility of the processability, the portability of
+all this across the networks. How do we pull those three together?
+
+Adding a question that reflected HOCKEY's comment that this was the
+fourth workshop she had attended in the previous thirty days, FLEISCHHAUER
+wondered to what extent this meeting had reinvented the wheel, or if it
+had contributed anything in the way of bringing together a different group
+of people from those who normally appear on the workshop circuit.
+
+HOCKEY confessed to being struck at this meeting and the one the
+Electronic Pierce Consortium organized the previous week that this was a
+coming together of people working on texts and not images. Attempting to
+bring the two together is something we ought to be thinking about for the
+future: How one can think about working with image material to begin
+with, but structuring it and digitizing it in such a way that at a later
+stage it can be interpreted into text, and find a common way of building
+text and images together so that they can be used jointly in the future,
+with the network support to begin there because that is how people will
+want to access it.
+
+In planning the long-term development of something, which is what is
+being done in electronic text, HOCKEY stressed the importance not only
+of discussing the technical aspects of how one does it but particularly
+of thinking about what the people who use the stuff will want to do.
+But conversely, there are numerous things that people start to do with
+electronic text or material that nobody ever thought of in the beginning.
+
+LESK, in response to the question concerning the role of the Library of
+Congress, remarked the often suggested desideratum of having electronic
+deposit: Since everything is now computer-typeset, an entire decade of
+material that was machine-readable exists, but the publishers frequently
+did not save it; has LC taken any action to have its copyright deposit
+operation start collecting these machine-readable versions? In the
+absence of PETERS, GIFFORD replied that the question was being
+actively considered but that that was only one dimension of the problem.
+Another dimension is the whole question of the integrity of the original
+electronic document. It becomes highly important in science to prove
+authorship. How will that be done?
+
+ERWAY explained that, under the old policy, to make a claim for a
+copyright for works that were published in electronic form, including
+software, one had to submit a paper copy of the first and last twenty
+pages of code--something that represented the work but did not include
+the entire work itself and had little value to anyone. As a temporary
+measure, LC has claimed the right to demand electronic versions of
+electronic publications. This measure entails a proactive role for the
+Library to say that it wants a particular electronic version. Publishers
+then have perhaps a year to submit it. But the real problem for LC is
+what to do with all this material in all these different formats. Will
+the Library mount it? How will it give people access to it? How does LC
+keep track of the appropriate computers, software, and media? The situation
+is so hard to control, ERWAY said, that it makes sense for each publishing
+house to maintain its own archive. But LC cannot enforce that either.
+
+GIFFORD acknowledged LESK's suggestion that establishing a priority
+offered the solution, albeit a fairly complicated one. But who maintains
+that register?, he asked. GRABER noted that LC does attempt to collect a
+Macintosh version and the IBM-compatible version of software. It does
+not collect other versions. But while true for software, BYRUM observed,
+this reply does not speak to materials, that is, all the materials that
+were published that were on somebody's microcomputer or driver tapes
+at a publishing office across the country. LC does well to acquire
+specific machine-readable products selectively that were intended to be
+machine-readable. Materials that were in machine-readable form at one time,
+BYRUM said, would be beyond LC's capability at the moment, insofar as
+attempting to acquire, organize, and preserve them are concerned--and
+preservation would be the most important consideration. In this
+connection, GIFFORD reiterated the need to work out some sense of
+distributive responsibility for a number of these issues, which
+inevitably will require significant cooperation and discussion.
+Nobody can do it all.
+
+LESK suggested that some publishers may look with favor on LC beginning
+to serve as a depository of tapes in an electronic manuscript standard.
+Publishers may view this as a service that they did not have to perform
+and they might send in tapes. However, SPERBERG-McQUEEN countered,
+although publishers have had equivalent services available to them for a
+long time, the electronic text archive has never turned away or been
+flooded with tapes and is forever sending feedback to the depositor.
+Some publishers do send in tapes.
+
+ANDRE viewed this discussion as an allusion to the issue of standards.
+She recommended that the AAP standard and the TEI, which has already been
+somewhat harmonized internationally and which also shares several
+compatibilities with the AAP, be harmonized to ensure sufficient
+compatibility in the software. She drew the line at saying LC ought to
+be the locus or forum for such harmonization.
+
+Taking the group in a slightly different direction, but one where at
+least in the near term LC might play a helpful role, LYNCH remarked the
+plans of a number of projects to carry out preservation by creating
+digital images that will end up in on-line or near-line storage at some
+institution. Presumably, LC will link this material somehow to its
+on-line catalog in most cases. Thus, it is in a digital form. LYNCH had
+the impression that many of these institutions would be willing to make
+those files accessible to other people outside the institution, provided
+that there is no copyright problem. This desideratum will require
+propagating the knowledge that those digitized files exist, so that they
+can end up in other on-line catalogs. Although uncertain about the
+mechanism for achieving this result, LYNCH said that it warranted
+scrutiny because it seemed to be connected to some of the basic issues of
+cataloging and distribution of records. It would be foolish, given the
+amount of work that all of us have to do and our meager resources, to
+discover multiple institutions digitizing the same work. Re microforms,
+LYNCH said, we are in pretty good shape.
+
+BATTIN called this a big problem and noted that the Cornell people (who
+had already departed) were working on it. At issue from the beginning
+was to learn how to catalog that information into RLIN and then into
+OCLC, so that it would be accessible. That issue remains to be resolved.
+LYNCH rejoined that putting it into OCLC or RLIN was helpful insofar as
+somebody who is thinking of performing preservation activity on that work
+could learn about it. It is not necessarily helpful for institutions to
+make that available. BATTIN opined that the idea was that it not only be
+for preservation purposes but for the convenience of people looking for
+this material. She endorsed LYNCH's dictum that duplication of this
+effort was to be avoided by every means.
+
+HOCKEY informed the Workshop about one major current activity of CETH,
+namely a catalogue of machine-readable texts in the humanities. Held on
+RLIN at present, the catalogue has been concentrated on ASCII as opposed
+to digitized images of text. She is exploring ways to improve the
+catalogue and make it more widely available, and welcomed suggestions
+about these concerns. CETH owns the records, which are not just
+restricted to RLIN, and can distribute them however it wishes.
+
+Taking up LESK's earlier question, BATTIN inquired whether LC, since it
+is accepting electronic files and designing a mechanism for dealing with
+that rather than putting books on shelves, would become responsible for
+the National Copyright Depository of Electronic Materials. Of course
+that could not be accomplished overnight, but it would be something LC
+could plan for. GIFFORD acknowledged that much thought was being devoted
+to that set of problems and returned the discussion to the issue raised
+by LYNCH--whether or not putting the kind of records that both BATTIN and
+HOCKEY have been talking about in RLIN is not a satisfactory solution.
+It seemed to him that RLIN answered LYNCH's original point concerning
+some kind of directory for these kinds of materials. In a situation
+where somebody is attempting to decide whether or not to scan this or
+film that or to learn whether or not someone has already done so, LYNCH
+suggested, RLIN is helpful, but it is not helpful in the case of a local,
+on-line catalogue. Further, one would like to have her or his system be
+aware that that exists in digital form, so that one can present it to a
+patron, even though one did not digitize it, if it is out of copyright.
+The only way to make those linkages would be to perform a tremendous
+amount of real-time look-up, which would be awkward at best, or
+periodically to yank the whole file from RLIN and match it against one's
+own stuff, which is a nuisance.
+
+But where, ERWAY inquired, does one stop including things that are
+available with Internet, for instance, in one's local catalogue?
+It almost seems that that is LC's means to acquire access to them.
+That represents LC's new form of library loan. Perhaps LC's new on-line
+catalogue is an amalgamation of all these catalogues on line. LYNCH
+conceded that perhaps that was true in the very long term, but was not
+applicable to scanning in the short term. In his view, the totals cited
+by Yale, 10,000 books over perhaps a four-year period, and 1,000-1,500
+books from Cornell, were not big numbers, while searching all over
+creation for relatively rare occurrences will prove to be less efficient.
+As GIFFORD wondered if this would not be a separable file on RLIN and
+could be requested from them, BATTIN interjected that it was easily
+accessible to an institution. SEVERTSON pointed out that that file, cum
+enhancements, was available with reference information on CD-ROM, which
+makes it a little more available.
+
+In HOCKEY's view, the real question facing the Workshop is what to put in
+this catalogue, because that raises the question of what constitutes a
+publication in the electronic world. (WEIBEL interjected that Eric Joule
+in OCLC's Office of Research is also wrestling with this particular
+problem, while GIFFORD thought it sounded fairly generic.) HOCKEY
+contended that a majority of texts in the humanities are in the hands
+of either a small number of large research institutions or individuals
+and are not generally available for anyone else to access at all.
+She wondered if these texts ought to be catalogued.
+
+After argument proceeded back and forth for several minutes over why
+cataloguing might be a necessary service, LEBRON suggested that this
+issue involved the responsibility of a publisher. The fact that someone
+has created something electronically and keeps it under his or her
+control does not constitute publication. Publication implies
+dissemination. While it would be important for a scholar to let other
+people know that this creation exists, in many respects this is no
+different from an unpublished manuscript. That is what is being accessed
+in there, except that now one is not looking at it in the hard-copy but
+in the electronic environment.
+
+LEBRON expressed puzzlement at the variety of ways electronic publishing
+has been viewed. Much of what has been discussed throughout these two
+days has concerned CD-ROM publishing, whereas in the on-line environment
+that she confronts, the constraints and challenges are very different.
+Sooner or later LC will have to deal with the concept of on-line
+publishing. Taking up the comment ERWAY made earlier about storing
+copies, LEBRON gave her own journal as an example. How would she deposit
+OJCCT for copyright?, she asked, because the journal will exist in the
+mainframe at OCLC and people will be able to access it. Here the
+situation is different, ownership versus access, and is something that
+arises with publication in the on-line environment, faster than is
+sometimes realized. Lacking clear answers to all of these questions
+herself, LEBRON did not anticipate that LC would be able to take a role
+in helping to define some of them for quite a while.
+
+GREENFIELD observed that LC's Network Development Office is attempting,
+among other things, to explore the limits of MARC as a standard in terms
+of handling electronic information. GREENFIELD also noted that Rebecca
+GUENTHER from that office gave a paper to the American Society for
+Information Science (ASIS) summarizing several of the discussion papers
+that were coming out of the Network Development Office. GREENFIELD said
+he understood that that office had a list-server soliciting just the kind
+of feedback received today concerning the difficulties of identifying and
+cataloguing electronic information. GREENFIELD hoped that everybody
+would be aware of that and somehow contribute to that conversation.
+
+Noting two of LC's roles, first, to act as a repository of record for
+material that is copyrighted in this country, and second, to make
+materials it holds available in some limited form to a clientele that
+goes beyond Congress, BESSER suggested that it was incumbent on LC to
+extend those responsibilities to all the things being published in
+electronic form. This would mean eventually accepting electronic
+formats. LC could require that at some point they be in a certain
+limited set of formats, and then develop mechanisms for allowing people
+to access those in the same way that other things are accessed. This
+does not imply that they are on the network and available to everyone.
+LC does that with most of its bibliographic records, BESSER said, which
+end up migrating to the utility (e.g., OCLC) or somewhere else. But just
+as most of LC's books are available in some form through interlibrary
+loan or some other mechanism, so in the same way electronic formats ought
+to be available to others in some format, though with some copyright
+considerations. BESSER was not suggesting that these mechanisms be
+established tomorrow, only that they seemed to fall within LC's purview,
+and that there should be long-range plans to establish them.
+
+Acknowledging that those from LC in the room agreed with BESSER
+concerning the need to confront difficult questions, GIFFORD underscored
+the magnitude of the problem of what to keep and what to select. GIFFORD
+noted that LC currently receives some 31,000 items per day, not counting
+electronic materials, and argued for much more distributed responsibility
+in order to maintain and store electronic information.
+
+BESSER responded that the assembled group could be viewed as a starting
+point, whose initial operating premise could be helping to move in this
+direction and defining how LC could do so, for example, in areas of
+standardization or distribution of responsibility.
+
+FLEISCHHAUER added that AM was fully engaged, wrestling with some of the
+questions that pertain to the conversion of older historical materials,
+which would be one thing that the Library of Congress might do. Several
+points mentioned by BESSER and several others on this question have a
+much greater impact on those who are concerned with cataloguing and the
+networking of bibliographic information, as well as preservation itself.
+
+Speaking directly to AM, which he considered was a largely uncopyrighted
+database, LYNCH urged development of a network version of AM, or
+consideration of making the data in it available to people interested in
+doing network multimedia. On account of the current great shortage of
+digital data that is both appealing and unencumbered by complex rights
+problems, this course of action could have a significant effect on making
+network multimedia a reality.
+
+In this connection, FLEISCHHAUER reported on a fragmentary prototype in
+LC's Office of Information Technology Services that attempts to associate
+digital images of photographs with cataloguing information in ways that
+work within a local area network--a step, so to say, toward AM's
+construction of some sort of apparatus for access. Further, AM has
+attempted to use standard data forms in order to help make that
+distinction between the access tools and the underlying data, and thus
+believes that the database is networkable.
+
+A delicate and agonizing policy question for LC, however, which comes
+back to resources and unfortunately has an impact on this, is to find
+some appropriate, honorable, and legal cost-recovery possibilities. A
+certain skittishness concerning cost-recovery has made people unsure
+exactly what to do. AM would be highly receptive to discussing further
+LYNCH's offer to test or demonstrate its database in a network
+environment, FLEISCHHAUER said.
+
+Returning the discussion to what she viewed as the vital issue of
+electronic deposit, BATTIN recommended that LC initiate a catalytic
+process in terms of distributed responsibility, that is, bring together
+the distributed organizations and set up a study group to look at all
+these issues and see where we as a nation should move. The broader
+issues of how we deal with the management of electronic information will
+not disappear, but only grow worse.
+
+LESK took up this theme and suggested that LC attempt to persuade one
+major library in each state to deal with its state equivalent publisher,
+which might produce a cooperative project that would be equitably
+distributed around the country, and one in which LC would be dealing with
+a minimal number of publishers and minimal copyright problems.
+
+GRABER remarked the recent development in the scientific community of a
+willingness to use SGML and either deposit or interchange on a fairly
+standardized format. He wondered if a similar movement was taking place
+in the humanities. Although the National Library of Medicine found only
+a few publishers to cooperate in a like venture two or three years ago, a
+new effort might generate a much larger number willing to cooperate.
+
+KIMBALL recounted his unit's (Machine-Readable Collections Reading Room)
+troubles with the commercial publishers of electronic media in acquiring
+materials for LC's collections, in particular the publishers' fear that
+they would not be able to cover their costs and would lose control of
+their products, that LC would give them away or sell them and make
+profits from them. He doubted that the publishing industry was prepared
+to move into this area at the moment, given its resistance to allowing LC
+to use its machine-readable materials as the Library would like.
+
+The copyright law now addresses compact disk as a medium, and LC can
+request one copy of that, or two copies if it is the only version, and
+can request copies of software, but that fails to address magazines or
+books or anything like that which is in machine-readable form.
+
+GIFFORD acknowledged the thorny nature of this issue, which he illustrated
+with the example of the cumbersome process involved in putting a copy of a
+scientific database on a LAN in LC's science reading room. He also
+acknowledged that LC needs help and could enlist the energies and talents
+of Workshop participants in thinking through a number of these problems.
+
+GIFFORD returned the discussion to getting the image and text people to
+think through together where they want to go in the long term. MYLONAS
+conceded that her experience at the Pierce Symposium the previous week at
+Georgetown University and this week at LC had forced her to reevaluate
+her perspective on the usefulness of text as images. MYLONAS framed the
+issues in a series of questions: How do we acquire machine-readable
+text? Do we take pictures of it and perform OCR on it later? Is it
+important to obtain very high-quality images and text, etc.?
+FLEISCHHAUER agreed with MYLONAS's framing of strategic questions, adding
+that a large institution such as LC probably has to do all of those
+things at different times. Thus, the trick is to exercise judgment. The
+Workshop had added to his and AM's considerations in making those
+judgments. Concerning future meetings or discussions, MYLONAS suggested
+that screening priorities would be helpful.
+
+WEIBEL opined that the diversity reflected in this group was a sign both
+of the health and of the immaturity of the field, and more time would
+have to pass before we convince one another concerning standards.
+
+An exchange between MYLONAS and BATTIN clarified the point that the
+driving force behind both the Perseus and the Cornell Xerox projects was
+the preservation of knowledge for the future, not simply for particular
+research use. In the case of Perseus, MYLONAS said, the assumption was
+that the texts would not be entered again into electronically readable
+form. SPERBERG-McQUEEN added that a scanned image would not serve as an
+archival copy for purposes of preservation in the case of, say, the Bill
+of Rights, in the sense that the scanned images are effectively the
+archival copies for the Cornell mathematics books.
+
+
+ *** *** *** ****** *** *** ***
+
+
+ Appendix I: PROGRAM
+
+
+
+ WORKSHOP
+ ON
+ ELECTRONIC
+ TEXTS
+
+
+
+ 9-10 June 1992
+
+ Library of Congress
+ Washington, D.C.
+
+
+
+ Supported by a Grant from the David and Lucile Packard Foundation
+
+
+Tuesday, 9 June 1992
+
+NATIONAL DEMONSTRATION LAB, ATRIUM, LIBRARY MADISON
+
+8:30 AM Coffee and Danish, registration
+
+9:00 AM Welcome
+
+ Prosser Gifford, Director for Scholarly Programs, and Carl
+ Fleischhauer, Coordinator, American Memory, Library of
+ Congress
+
+9:l5 AM Session I. Content in a New Form: Who Will Use It and What
+ Will They Do?
+
+ Broad description of the range of electronic information.
+ Characterization of who uses it and how it is or may be used.
+ In addition to a look at scholarly uses, this session will
+ include a presentation on use by students (K-12 and college)
+ and the general public.
+
+ Moderator: James Daly
+ Avra Michelson, Archival Research and Evaluation Staff,
+ National Archives and Records Administration (Overview)
+ Susan H. Veccia, Team Leader, American Memory, User Evaluation,
+ and
+ Joanne Freeman, Associate Coordinator, American Memory, Library
+ of Congress (Beyond the scholar)
+
+10:30-
+11:00 AM Break
+
+11:00 AM Session II. Show and Tell.
+
+ Each presentation to consist of a fifteen-minute
+ statement/show; group discussion will follow lunch.
+
+ Moderator: Jacqueline Hess, Director, National Demonstration
+ Lab
+
+ 1. A classics project, stressing texts and text retrieval
+ more than multimedia: Perseus Project, Harvard
+ University
+ Elli Mylonas, Managing Editor
+
+ 2. Other humanities projects employing the emerging norms of
+ the Text Encoding Initiative (TEI): Chadwyck-Healey's
+ The English Poetry Full Text Database and/or Patrologia
+ Latina Database
+ Eric M. Calaluca, Vice President, Chadwyck-Healey, Inc.
+
+ 3. American Memory
+ Carl Fleischhauer, Coordinator, and
+ Ricky Erway, Associate Coordinator, Library of Congress
+
+ 4. Founding Fathers example from Packard Humanities
+ Institute: The Papers of George Washington, University
+ of Virginia
+ Dorothy Twohig, Managing Editor, and/or
+ David Woodley Packard
+
+ 5. An electronic medical journal offering graphics and
+ full-text searchability: The Online Journal of Current
+ Clinical Trials, American Association for the Advancement
+ of Science
+ Maria L. Lebron, Managing Editor
+
+ 6. A project that offers facsimile images of pages but omits
+ searchable text: Cornell math books
+ Lynne K. Personius, Assistant Director, Cornell
+ Information Technologies for Scholarly Information
+ Sources, Cornell University
+
+12:30 PM Lunch (Dining Room A, Library Madison 620. Exhibits
+ available.)
+
+1:30 PM Session II. Show and Tell (Cont'd.).
+
+3:00-
+3:30 PM Break
+
+3:30-
+5:30 PM Session III. Distribution, Networks, and Networking: Options
+ for Dissemination.
+
+ Published disks: University presses and public-sector
+ publishers, private-sector publishers
+ Computer networks
+
+ Moderator: Robert G. Zich, Special Assistant to the Associate
+ Librarian for Special Projects, Library of Congress
+ Clifford A. Lynch, Director, Library Automation, University of
+ California
+ Howard Besser, School of Library and Information Science,
+ University of Pittsburgh
+ Ronald L. Larsen, Associate Director of Libraries for
+ Information Technology, University of Maryland at College
+ Park
+ Edwin B. Brownrigg, Executive Director, Memex Research
+ Institute
+
+6:30 PM Reception (Montpelier Room, Library Madison 619.)
+
+ ******
+
+Wednesday, 10 June 1992
+
+DINING ROOM A, LIBRARY MADISON 620
+
+8:30 AM Coffee and Danish
+
+9:00 AM Session IV. Image Capture, Text Capture, Overview of Text and
+ Image Storage Formats.
+
+ Moderator: William L. Hooton, Vice President of Operations,
+ I-NET
+
+ A) Principal Methods for Image Capture of Text:
+ Direct scanning
+ Use of microform
+
+ Anne R. Kenney, Assistant Director, Department of Preservation
+ and Conservation, Cornell University
+ Pamela Q.J. Andre, Associate Director, Automation, and
+ Judith A. Zidar, Coordinator, National Agricultural Text
+ Digitizing Program (NATDP), National Agricultural Library
+ (NAL)
+ Donald J. Waters, Head, Systems Office, Yale University Library
+
+ B) Special Problems:
+ Bound volumes
+ Conservation
+ Reproducing printed halftones
+
+ Carl Fleischhauer, Coordinator, American Memory, Library of
+ Congress
+ George Thoma, Chief, Communications Engineering Branch,
+ National Library of Medicine (NLM)
+
+10:30-
+11:00 AM Break
+
+11:00 AM Session IV. Image Capture, Text Capture, Overview of Text and
+ Image Storage Formats (Cont'd.).
+
+ C) Image Standards and Implications for Preservation
+
+ Jean Baronas, Senior Manager, Department of Standards and
+ Technology, Association for Information and Image Management
+ (AIIM)
+ Patricia Battin, President, The Commission on Preservation and
+ Access (CPA)
+
+ D) Text Conversion:
+ OCR vs. rekeying
+ Standards of accuracy and use of imperfect texts
+ Service bureaus
+
+ Stuart Weibel, Senior Research Specialist, Online Computer
+ Library Center, Inc. (OCLC)
+ Michael Lesk, Executive Director, Computer Science Research,
+ Bellcore
+ Ricky Erway, Associate Coordinator, American Memory, Library of
+ Congress
+ Pamela Q.J. Andre, Associate Director, Automation, and
+ Judith A. Zidar, Coordinator, National Agricultural Text
+ Digitizing Program (NATDP), National Agricultural Library
+ (NAL)
+
+12:30-
+1:30 PM Lunch
+
+1:30 PM Session V. Approaches to Preparing Electronic Texts.
+
+ Discussion of approaches to structuring text for the computer;
+ pros and cons of text coding, description of methods in
+ practice, and comparison of text-coding methods.
+
+ Moderator: Susan Hockey, Director, Center for Electronic Texts
+ in the Humanities (CETH), Rutgers and Princeton Universities
+ David Woodley Packard
+ C.M. Sperberg-McQueen, Editor, Text Encoding Initiative (TEI),
+ University of Illinois-Chicago
+ Eric M. Calaluca, Vice President, Chadwyck-Healey, Inc.
+
+3:30-
+4:00 PM Break
+
+4:00 PM Session VI. Copyright Issues.
+
+ Marybeth Peters, Policy Planning Adviser to the Register of
+ Copyrights, Library of Congress
+
+5:00 PM Session VII. Conclusion.
+
+ General discussion.
+ What topics were omitted or given short shrift that anyone
+ would like to talk about now?
+ Is there a "group" here? What should the group do next, if
+ anything? What should the Library of Congress do next, if
+ anything?
+ Moderator: Prosser Gifford, Director for Scholarly Programs,
+ Library of Congress
+
+6:00 PM Adjourn
+
+
+ *** *** *** ****** *** *** ***
+
+
+ Appendix II: ABSTRACTS
+
+
+SESSION I
+
+Avra MICHELSON Forecasting the Use of Electronic Texts by
+ Social Sciences and Humanities Scholars
+
+This presentation explores the ways in which electronic texts are likely
+to be used by the non-scientific scholarly community. Many of the
+remarks are drawn from a report the speaker coauthored with Jeff
+Rothenberg, a computer scientist at The RAND Corporation.
+
+The speaker assesses 1) current scholarly use of information technology
+and 2) the key trends in information technology most relevant to the
+research process, in order to predict how social sciences and humanities
+scholars are apt to use electronic texts. In introducing the topic,
+current use of electronic texts is explored broadly within the context of
+scholarly communication. From the perspective of scholarly
+communication, the work of humanities and social sciences scholars
+involves five processes: 1) identification of sources, 2) communication
+with colleagues, 3) interpretation and analysis of data, 4) dissemination
+of research findings, and 5) curriculum development and instruction. The
+extent to which computation currently permeates aspects of scholarly
+communication represents a viable indicator of the prospects for
+electronic texts.
+
+The discussion of current practice is balanced by an analysis of key
+trends in the scholarly use of information technology. These include the
+trends toward end-user computing and connectivity, which provide a
+framework for forecasting the use of electronic texts through this
+millennium. The presentation concludes with a summary of the ways in
+which the nonscientific scholarly community can be expected to use
+electronic texts, and the implications of that use for information
+providers.
+
+Susan VECCIA and Joanne FREEMAN Electronic Archives for the Public:
+ Use of American Memory in Public and
+ School Libraries
+
+This joint discussion focuses on nonscholarly applications of electronic
+library materials, specifically addressing use of the Library of Congress
+American Memory (AM) program in a small number of public and school
+libraries throughout the United States. AM consists of selected Library
+of Congress primary archival materials, stored on optical media
+(CD-ROM/videodisc), and presented with little or no editing. Many
+collections are accompanied by electronic introductions and user's guides
+offering background information and historical context. Collections
+represent a variety of formats including photographs, graphic arts,
+motion pictures, recorded sound, music, broadsides and manuscripts,
+books, and pamphlets.
+
+In 1991, the Library of Congress began a nationwide evaluation of AM in
+different types of institutions. Test sites include public libraries,
+elementary and secondary school libraries, college and university
+libraries, state libraries, and special libraries. Susan VECCIA and
+Joanne FREEMAN will discuss their observations on the use of AM by the
+nonscholarly community, using evidence gleaned from this ongoing
+evaluation effort.
+
+VECCIA will comment on the overall goals of the evaluation project, and
+the types of public and school libraries included in this study. Her
+comments on nonscholarly use of AM will focus on the public library as a
+cultural and community institution, often bridging the gap between formal
+and informal education. FREEMAN will discuss the use of AM in school
+libraries. Use by students and teachers has revealed some broad
+questions about the use of electronic resources, as well as definite
+benefits gained by the "nonscholar." Topics will include the problem of
+grasping content and context in an electronic environment, the stumbling
+blocks created by "new" technologies, and the unique skills and interests
+awakened through use of electronic resources.
+
+SESSION II
+
+Elli MYLONAS The Perseus Project: Interactive Sources and
+ Studies in Classical Greece
+
+The Perseus Project (5) has just released Perseus 1.0, the first publicly
+available version of its hypertextual database of multimedia materials on
+classical Greece. Perseus is designed to be used by a wide audience,
+comprised of readers at the student and scholar levels. As such, it must
+be able to locate information using different strategies, and it must
+contain enough detail to serve the different needs of its users. In
+addition, it must be delivered so that it is affordable to its target
+audience. [These problems and the solutions we chose are described in
+Mylonas, "An Interface to Classical Greek Civilization," JASIS 43:2,
+March 1992.]
+
+In order to achieve its objective, the project staff decided to make a
+conscious separation between selecting and converting textual, database,
+and image data on the one hand, and putting it into a delivery system on
+the other. That way, it is possible to create the electronic data
+without thinking about the restrictions of the delivery system. We have
+made a great effort to choose system-independent formats for our data,
+and to put as much thought and work as possible into structuring it so
+that the translation from paper to electronic form will enhance the value
+of the data. [A discussion of these solutions as of two years ago is in
+Elli Mylonas, Gregory Crane, Kenneth Morrell, and D. Neel Smith, "The
+Perseus Project: Data in the Electronic Age," in Accessing Antiquity:
+The Computerization of Classical Databases, J. Solomon and T. Worthen
+(eds.), University of Arizona Press, in press.]
+
+Much of the work on Perseus is focused on collecting and converting the
+data on which the project is based. At the same time, it is necessary to
+provide means of access to the information, in order to make it usable,
+and them to investigate how it is used. As we learn more about what
+students and scholars from different backgrounds do with Perseus, we can
+adjust our data collection, and also modify the system to accommodate
+them. In creating a delivery system for general use, we have tried to
+avoid favoring any one type of use by allowing multiple forms of access
+to and navigation through the system.
+
+The way text is handled exemplifies some of these principles. All text
+in Perseus is tagged using SGML, following the guidelines of the Text
+Encoding Initiative (TEI). This markup is used to index the text, and
+process it so that it can be imported into HyperCard. No SGML markup
+remains in the text that reaches the user, because currently it would be
+too expensive to create a system that acts on SGML in real time.
+However, the regularity provided by SGML is essential for verifying the
+content of the texts, and greatly speeds all the processing performed on
+them. The fact that the texts exist in SGML ensures that they will be
+relatively easy to port to different hardware and software, and so will
+outlast the current delivery platform. Finally, the SGML markup
+incorporates existing canonical reference systems (chapter, verse, line,
+etc.); indexing and navigation are based on these features. This ensures
+that the same canonical reference will always resolve to the same point
+within a text, and that all versions of our texts, regardless of delivery
+platform (even paper printouts) will function the same way.
+
+In order to provide tools for users, the text is processed by a
+morphological analyzer, and the results are stored in a database.
+Together with the index, the Greek-English Lexicon, and the index of all
+the English words in the definitions of the lexicon, the morphological
+analyses comprise a set of linguistic tools that allow users of all
+levels to work with the textual information, and to accomplish different
+tasks. For example, students who read no Greek may explore a concept as
+it appears in Greek texts by using the English-Greek index, and then
+looking up works in the texts and translations, or scholars may do
+detailed morphological studies of word use by using the morphological
+analyses of the texts. Because these tools were not designed for any one
+use, the same tools and the same data can be used by both students and
+scholars.
+
+NOTES:
+ (5) Perseus is based at Harvard University, with collaborators at
+ several other universities. The project has been funded primarily
+ by the Annenberg/CPB Project, as well as by Harvard University,
+ Apple Computer, and others. It is published by Yale University
+ Press. Perseus runs on Macintosh computers, under the HyperCard
+ program.
+
+Eric CALALUCA
+
+Chadwyck-Healey embarked last year on two distinct yet related full-text
+humanities database projects.
+
+The English Poetry Full-Text Database and the Patrologia Latina Database
+represent new approaches to linguistic research resources. The size and
+complexity of the projects present problems for electronic publishers,
+but surmountable ones if they remain abreast of the latest possibilities
+in data capture and retrieval software techniques.
+
+The issues which required address prior to the commencement of the
+projects were legion:
+
+ 1. Editorial selection (or exclusion) of materials in each
+ database
+
+ 2. Deciding whether or not to incorporate a normative encoding
+ structure into the databases?
+ A. If one is selected, should it be SGML?
+ B. If SGML, then the TEI?
+
+ 3. Deliver as CD-ROM, magnetic tape, or both?
+
+ 4. Can one produce retrieval software advanced enough for the
+ postdoctoral linguist, yet accessible enough for unattended
+ general use? Should one try?
+
+ 5. Re fair and liberal networking policies, what are the risks to
+ an electronic publisher?
+
+ 6. How does the emergence of national and international education
+ networks affect the use and viability of research projects
+ requiring high investment? Do the new European Community
+ directives concerning database protection necessitate two
+ distinct publishing projects, one for North America and one for
+ overseas?
+
+From new notions of "scholarly fair use" to the future of optical media,
+virtually every issue related to electronic publishing was aired. The
+result is two projects which have been constructed to provide the quality
+research resources with the fewest encumbrances to use by teachers and
+private scholars.
+
+Dorothy TWOHIG
+
+In spring 1988 the editors of the papers of George Washington, John
+Adams, Thomas Jefferson, James Madison, and Benjamin Franklin were
+approached by classics scholar David Packard on behalf of the Packard
+Humanities Foundation with a proposal to produce a CD-ROM edition of the
+complete papers of each of the Founding Fathers. This electronic edition
+will supplement the published volumes, making the documents widely
+available to students and researchers at reasonable cost. We estimate
+that our CD-ROM edition of Washington's Papers will be substantially
+completed within the next two years and ready for publication. Within
+the next ten years or so, similar CD-ROM editions of the Franklin, Adams,
+Jefferson, and Madison papers also will be available. At the Library of
+Congress's session on technology, I would like to discuss not only the
+experience of the Washington Papers in producing the CD-ROM edition, but
+the impact technology has had on these major editorial projects.
+Already, we are editing our volumes with an eye to the material that will
+be readily available in the CD-ROM edition. The completed electronic
+edition will provide immense possibilities for the searching of documents
+for information in a way never possible before. The kind of technical
+innovations that are currently available and on the drawing board will
+soon revolutionize historical research and the production of historical
+documents. Unfortunately, much of this new technology is not being used
+in the planning stages of historical projects, simply because many
+historians are aware only in the vaguest way of its existence. At least
+two major new historical editing projects are considering microfilm
+editions, simply because they are not aware of the possibilities of
+electronic alternatives and the advantages of the new technology in terms
+of flexibility and research potential compared to microfilm. In fact,
+too many of us in history and literature are still at the stage of
+struggling with our PCs. There are many historical editorial projects in
+progress presently, and an equal number of literary projects. While the
+two fields have somewhat different approaches to textual editing, there
+are ways in which electronic technology can be of service to both.
+
+Since few of the editors involved in the Founding Fathers CD-ROM editions
+are technical experts in any sense, I hope to point out in my discussion
+of our experience how many of these electronic innovations can be used
+successfully by scholars who are novices in the world of new technology.
+One of the major concerns of the sponsors of the multitude of new
+scholarly editions is the limited audience reached by the published
+volumes. Most of these editions are being published in small quantities
+and the publishers' price for them puts them out of the reach not only of
+individual scholars but of most public libraries and all but the largest
+educational institutions. However, little attention is being given to
+ways in which technology can bypass conventional publication to make
+historical and literary documents more widely available.
+
+What attracted us most to the CD-ROM edition of The Papers of George
+Washington was the fact that David Packard's aim was to make a complete
+edition of all of the 135,000 documents we have collected available in an
+inexpensive format that would be placed in public libraries, small
+colleges, and even high schools. This would provide an audience far
+beyond our present 1,000-copy, $45 published edition. Since the CD-ROM
+edition will carry none of the explanatory annotation that appears in the
+published volumes, we also feel that the use of the CD-ROM will lead many
+researchers to seek out the published volumes.
+
+In addition to ignorance of new technical advances, I have found that too
+many editors--and historians and literary scholars--are resistant and
+even hostile to suggestions that electronic technology may enhance their
+work. I intend to discuss some of the arguments traditionalists are
+advancing to resist technology, ranging from distrust of the speed with
+which it changes (we are already wondering what is out there that is
+better than CD-ROM) to suspicion of the technical language used to
+describe electronic developments.
+
+Maria LEBRON
+
+The Online Journal of Current Clinical Trials, a joint venture of the
+American Association for the Advancement of Science (AAAS) and the Online
+Computer Library Center, Inc. (OCLC), is the first peer-reviewed journal
+to provide full text, tabular material, and line illustrations on line.
+This presentation will discuss the genesis and start-up period of the
+journal. Topics of discussion will include historical overview,
+day-to-day management of the editorial peer review, and manuscript
+tagging and publication. A demonstration of the journal and its features
+will accompany the presentation.
+
+Lynne PERSONIUS
+
+Cornell University Library, Cornell Information Technologies, and Xerox
+Corporation, with the support of the Commission on Preservation and
+Access, and Sun Microsystems, Inc., have been collaborating in a project
+to test a prototype system for recording brittle books as digital images
+and producing, on demand, high-quality archival paper replacements. The
+project goes beyond that, however, to investigate some of the issues
+surrounding scanning, storing, retrieving, and providing access to
+digital images in a network environment.
+
+The Joint Study in Digital Preservation began in January 1990. Xerox
+provided the College Library Access and Storage System (CLASS) software,
+a prototype 600-dots-per-inch (dpi) scanner, and the hardware necessary
+to support network printing on the DocuTech printer housed in Cornell's
+Computing and Communications Center (CCC).
+
+The Cornell staff using the hardware and software became an integral part
+of the development and testing process for enhancements to the CLASS
+software system. The collaborative nature of this relationship is
+resulting in a system that is specifically tailored to the preservation
+application.
+
+A digital library of 1,000 volumes (or approximately 300,000 images) has
+been created and is stored on an optical jukebox that resides in CCC.
+The library includes a collection of select mathematics monographs that
+provides mathematics faculty with an opportunity to use the electronic
+library. The remaining volumes were chosen for the library to test the
+various capabilities of the scanning system.
+
+One project objective is to provide users of the Cornell library and the
+library staff with the ability to request facsimiles of digitized images
+or to retrieve the actual electronic image for browsing. A prototype
+viewing workstation has been created by Xerox, with input into the design
+by a committee of Cornell librarians and computer professionals. This
+will allow us to experiment with patron access to the images that make up
+the digital library. The viewing station provides search, retrieval, and
+(ultimately) printing functions with enhancements to facilitate
+navigation through multiple documents.
+
+Cornell currently is working to extend access to the digital library to
+readers using workstations from their offices. This year is devoted to
+the development of a network resident image conversion and delivery
+server, and client software that will support readers who use Apple
+Macintosh computers, IBM windows platforms, and Sun workstations.
+Equipment for this development was provided by Sun Microsystems with
+support from the Commission on Preservation and Access.
+
+During the show-and-tell session of the Workshop on Electronic Texts, a
+prototype view station will be demonstrated. In addition, a display of
+original library books that have been digitized will be available for
+review with associated printed copies for comparison. The fifteen-minute
+overview of the project will include a slide presentation that
+constitutes a "tour" of the preservation digitizing process.
+
+The final network-connected version of the viewing station will provide
+library users with another mechanism for accessing the digital library,
+and will also provide the capability of viewing images directly. This
+will not require special software, although a powerful computer with good
+graphics will be needed.
+
+The Joint Study in Digital Preservation has generated a great deal of
+interest in the library community. Unfortunately, or perhaps
+fortunately, this project serves to raise a vast number of other issues
+surrounding the use of digital technology for the preservation and use of
+deteriorating library materials, which subsequent projects will need to
+examine. Much work remains.
+
+SESSION III
+
+Howard BESSER Networking Multimedia Databases
+
+What do we have to consider in building and distributing databases of
+visual materials in a multi-user environment? This presentation examines
+a variety of concerns that need to be addressed before a multimedia
+database can be set up in a networked environment.
+
+In the past it has not been feasible to implement databases of visual
+materials in shared-user environments because of technological barriers.
+Each of the two basic models for multi-user multimedia databases has
+posed its own problem. The analog multimedia storage model (represented
+by Project Athena's parallel analog and digital networks) has required an
+incredibly complex (and expensive) infrastructure. The economies of
+scale that make multi-user setups cheaper per user served do not operate
+in an environment that requires a computer workstation, videodisc player,
+and two display devices for each user.
+
+The digital multimedia storage model has required vast amounts of storage
+space (as much as one gigabyte per thirty still images). In the past the
+cost of such a large amount of storage space made this model a
+prohibitive choice as well. But plunging storage costs are finally
+making this second alternative viable.
+
+If storage no longer poses such an impediment, what do we need to
+consider in building digitally stored multi-user databases of visual
+materials? This presentation will examine the networking and
+telecommunication constraints that must be overcome before such databases
+can become commonplace and useful to a large number of people.
+
+The key problem is the vast size of multimedia documents, and how this
+affects not only storage but telecommunications transmission time.
+Anything slower than T-1 speed is impractical for files of 1 megabyte or
+larger (which is likely to be small for a multimedia document). For
+instance, even on a 56 Kb line it would take three minutes to transfer a
+1-megabyte file. And these figures assume ideal circumstances, and do
+not take into consideration other users contending for network bandwidth,
+disk access time, or the time needed for remote display. Current common
+telephone transmission rates would be completely impractical; few users
+would be willing to wait the hour necessary to transmit a single image at
+2400 baud.
+
+This necessitates compression, which itself raises a number of other
+issues. In order to decrease file sizes significantly, we must employ
+lossy compression algorithms. But how much quality can we afford to
+lose? To date there has been only one significant study done of
+image-quality needs for a particular user group, and this study did not
+look at loss resulting from compression. Only after identifying
+image-quality needs can we begin to address storage and network bandwidth
+needs.
+
+Experience with X-Windows-based applications (such as Imagequery, the
+University of California at Berkeley image database) demonstrates the
+utility of a client-server topology, but also points to the limitation of
+current software for a distributed environment. For example,
+applications like Imagequery can incorporate compression, but current X
+implementations do not permit decompression at the end user's
+workstation. Such decompression at the host computer alleviates storage
+capacity problems while doing nothing to address problems of
+telecommunications bandwidth.
+
+We need to examine the effects on network through-put of moving
+multimedia documents around on a network. We need to examine various
+topologies that will help us avoid bottlenecks around servers and
+gateways. Experience with applications such as these raise still broader
+questions. How closely is the multimedia document tied to the software
+for viewing it? Can it be accessed and viewed from other applications?
+Experience with the MARC format (and more recently with the Z39.50
+protocols) shows how useful it can be to store documents in a form in
+which they can be accessed by a variety of application software.
+
+Finally, from an intellectual-access standpoint, we need to address the
+issue of providing access to these multimedia documents in
+interdisciplinary environments. We need to examine terminology and
+indexing strategies that will allow us to provide access to this material
+in a cross-disciplinary way.
+
+Ronald LARSEN Directions in High-Performance Networking for
+ Libraries
+
+The pace at which computing technology has advanced over the past forty
+years shows no sign of abating. Roughly speaking, each five-year period
+has yielded an order-of-magnitude improvement in price and performance of
+computing equipment. No fundamental hurdles are likely to prevent this
+pace from continuing for at least the next decade. It is only in the
+past five years, though, that computing has become ubiquitous in
+libraries, affecting all staff and patrons, directly or indirectly.
+
+During these same five years, communications rates on the Internet, the
+principal academic computing network, have grown from 56 kbps to 1.5
+Mbps, and the NSFNet backbone is now running 45 Mbps. Over the next five
+years, communication rates on the backbone are expected to exceed 1 Gbps.
+Growth in both the population of network users and the volume of network
+traffic has continued to grow geometrically, at rates approaching 15
+percent per month. This flood of capacity and use, likened by some to
+"drinking from a firehose," creates immense opportunities and challenges
+for libraries. Libraries must anticipate the future implications of this
+technology, participate in its development, and deploy it to ensure
+access to the world's information resources.
+
+The infrastructure for the information age is being put in place.
+Libraries face strategic decisions about their role in the development,
+deployment, and use of this infrastructure. The emerging infrastructure
+is much more than computers and communication lines. It is more than the
+ability to compute at a remote site, send electronic mail to a peer
+across the country, or move a file from one library to another. The next
+five years will witness substantial development of the information
+infrastructure of the network.
+
+In order to provide appropriate leadership, library professionals must
+have a fundamental understanding of and appreciation for computer
+networking, from local area networks to the National Research and
+Education Network (NREN). This presentation addresses these
+fundamentals, and how they relate to libraries today and in the near
+future.
+
+Edwin BROWNRIGG Electronic Library Visions and Realities
+
+The electronic library has been a vision desired by many--and rejected by
+some--since Vannevar Bush coined the term memex to describe an automated,
+intelligent, personal information system. Variations on this vision have
+included Ted Nelson's Xanadau, Alan Kay's Dynabook, and Lancaster's
+"paperless library," with the most recent incarnation being the
+"Knowledge Navigator" described by John Scully of Apple. But the reality
+of library service has been less visionary and the leap to the electronic
+library has eluded universities, publishers, and information technology
+files.
+
+The Memex Research Institute (MemRI), an independent, nonprofit research
+and development organization, has created an Electronic Library Program
+of shared research and development in order to make the collective vision
+more concrete. The program is working toward the creation of large,
+indexed publicly available electronic image collections of published
+documents in academic, special, and public libraries. This strategic
+plan is the result of the first stage of the program, which has been an
+investigation of the information technologies available to support such
+an effort, the economic parameters of electronic service compared to
+traditional library operations, and the business and political factors
+affecting the shift from print distribution to electronic networked
+access.
+
+The strategic plan envisions a combination of publicly searchable access
+databases, image (and text) document collections stored on network "file
+servers," local and remote network access, and an intellectual property
+management-control system. This combination of technology and
+information content is defined in this plan as an E-library or E-library
+collection. Some participating sponsors are already developing projects
+based on MemRI's recommended directions.
+
+The E-library strategy projected in this plan is a visionary one that can
+enable major changes and improvements in academic, public, and special
+library service. This vision is, though, one that can be realized with
+today's technology. At the same time, it will challenge the political
+and social structure within which libraries operate: in academic
+libraries, the traditional emphasis on local collections, extending to
+accreditation issues; in public libraries, the potential of electronic
+branch and central libraries fully available to the public; and for
+special libraries, new opportunities for shared collections and networks.
+
+The environment in which this strategic plan has been developed is, at
+the moment, dominated by a sense of library limits. The continued
+expansion and rapid growth of local academic library collections is now
+clearly at an end. Corporate libraries, and even law libraries, are
+faced with operating within a difficult economic climate, as well as with
+very active competition from commercial information sources. For
+example, public libraries may be seen as a desirable but not critical
+municipal service in a time when the budgets of safety and health
+agencies are being cut back.
+
+Further, libraries in general have a very high labor-to-cost ratio in
+their budgets, and labor costs are still increasing, notwithstanding
+automation investments. It is difficult for libraries to obtain capital,
+startup, or seed funding for innovative activities, and those
+technology-intensive initiatives that offer the potential of decreased
+labor costs can provoke the opposition of library staff.
+
+However, libraries have achieved some considerable successes in the past
+two decades by improving both their service and their credibility within
+their organizations--and these positive changes have been accomplished
+mostly with judicious use of information technologies. The advances in
+computing and information technology have been well-chronicled: the
+continuing precipitous drop in computing costs, the growth of the
+Internet and private networks, and the explosive increase in publicly
+available information databases.
+
+For example, OCLC has become one of the largest computer network
+organizations in the world by creating a cooperative cataloging network
+of more than 6,000 libraries worldwide. On-line public access catalogs
+now serve millions of users on more than 50,000 dedicated terminals in
+the United States alone. The University of California MELVYL on-line
+catalog system has now expanded into an index database reference service
+and supports more than six million searches a year. And, libraries have
+become the largest group of customers of CD-ROM publishing technology;
+more than 30,000 optical media publications such as those offered by
+InfoTrac and Silver Platter are subscribed to by U.S. libraries.
+
+This march of technology continues and in the next decade will result in
+further innovations that are extremely difficult to predict. What is
+clear is that libraries can now go beyond automation of their order files
+and catalogs to automation of their collections themselves--and it is
+possible to circumvent the fiscal limitations that appear to obtain
+today.
+
+This Electronic Library Strategic Plan recommends a paradigm shift in
+library service, and demonstrates the steps necessary to provide improved
+library services with limited capacities and operating investments.
+
+SESSION IV-A
+
+Anne KENNEY
+
+The Cornell/Xerox Joint Study in Digital Preservation resulted in the
+recording of 1,000 brittle books as 600-dpi digital images and the
+production, on demand, of high-quality and archivally sound paper
+replacements. The project, which was supported by the Commission on
+Preservation and Access, also investigated some of the issues surrounding
+scanning, storing, retrieving, and providing access to digital images in
+a network environment.
+
+Anne Kenney will focus on some of the issues surrounding direct scanning
+as identified in the Cornell Xerox Project. Among those to be discussed
+are: image versus text capture; indexing and access; image-capture
+capabilities; a comparison to photocopy and microfilm; production and
+cost analysis; storage formats, protocols, and standards; and the use of
+this scanning technology for preservation purposes.
+
+The 600-dpi digital images produced in the Cornell Xerox Project proved
+highly acceptable for creating paper replacements of deteriorating
+originals. The 1,000 scanned volumes provided an array of image-capture
+challenges that are common to nineteenth-century printing techniques and
+embrittled material, and that defy the use of text-conversion processes.
+These challenges include diminished contrast between text and background,
+fragile and deteriorated pages, uneven printing, elaborate type faces,
+faint and bold text adjacency, handwritten text and annotations, nonRoman
+languages, and a proliferation of illustrated material embedded in text.
+The latter category included high-frequency and low-frequency halftones,
+continuous tone photographs, intricate mathematical drawings, maps,
+etchings, reverse-polarity drawings, and engravings.
+
+The Xerox prototype scanning system provided a number of important
+features for capturing this diverse material. Technicians used multiple
+threshold settings, filters, line art and halftone definitions,
+autosegmentation, windowing, and software-editing programs to optimize
+image capture. At the same time, this project focused on production.
+The goal was to make scanning as affordable and acceptable as
+photocopying and microfilming for preservation reformatting. A
+time-and-cost study conducted during the last three months of this
+project confirmed the economic viability of digital scanning, and these
+findings will be discussed here.
+
+From the outset, the Cornell Xerox Project was predicated on the use of
+nonproprietary standards and the use of common protocols when standards
+did not exist. Digital files were created as TIFF images which were
+compressed prior to storage using Group 4 CCITT compression. The Xerox
+software is MS DOS based and utilizes off-the shelf programs such as
+Microsoft Windows and Wang Image Wizard. The digital library is designed
+to be hardware-independent and to provide interchangeability with other
+institutions through network connections. Access to the digital files
+themselves is two-tiered: Bibliographic records for the computer files
+are created in RLIN and Cornell's local system and access into the actual
+digital images comprising a book is provided through a document control
+structure and a networked image file-server, both of which will be
+described.
+
+The presentation will conclude with a discussion of some of the issues
+surrounding the use of this technology as a preservation tool (storage,
+refreshing, backup).
+
+Pamela ANDRE and Judith ZIDAR
+
+The National Agricultural Library (NAL) has had extensive experience with
+raster scanning of printed materials. Since 1987, the Library has
+participated in the National Agricultural Text Digitizing Project (NATDP)
+a cooperative effort between NAL and forty-five land grant university
+libraries. An overview of the project will be presented, giving its
+history and NAL's strategy for the future.
+
+An in-depth discussion of NATDP will follow, including a description of
+the scanning process, from the gathering of the printed materials to the
+archiving of the electronic pages. The type of equipment required for a
+stand-alone scanning workstation and the importance of file management
+software will be discussed. Issues concerning the images themselves will
+be addressed briefly, such as image format; black and white versus color;
+gray scale versus dithering; and resolution.
+
+Also described will be a study currently in progress by NAL to evaluate
+the usefulness of converting microfilm to electronic images in order to
+improve access. With the cooperation of Tuskegee University, NAL has
+selected three reels of microfilm from a collection of sixty-seven reels
+containing the papers, letters, and drawings of George Washington Carver.
+The three reels were converted into 3,500 electronic images using a
+specialized microfilm scanner. The selection, filming, and indexing of
+this material will be discussed.
+
+Donald WATERS
+
+Project Open Book, the Yale University Library's effort to convert 10,
+000 books from microfilm to digital imagery, is currently in an advanced
+state of planning and organization. The Yale Library has selected a
+major vendor to serve as a partner in the project and as systems
+integrator. In its proposal, the successful vendor helped isolate areas
+of risk and uncertainty as well as key issues to be addressed during the
+life of the project. The Yale Library is now poised to decide what
+material it will convert to digital image form and to seek funding,
+initially for the first phase and then for the entire project.
+
+The proposal that Yale accepted for the implementation of Project Open
+Book will provide at the end of three phases a conversion subsystem,
+browsing stations distributed on the campus network within the Yale
+Library, a subsystem for storing 10,000 books at 200 and 600 dots per
+inch, and network access to the image printers. Pricing for the system
+implementation assumes the existence of Yale's campus ethernet network
+and its high-speed image printers, and includes other requisite hardware
+and software, as well as system integration services. Proposed operating
+costs include hardware and software maintenance, but do not include
+estimates for the facilities management of the storage devices and image
+servers.
+
+Yale selected its vendor partner in a formal process, partly funded by
+the Commission for Preservation and Access. Following a request for
+proposal, the Yale Library selected two vendors as finalists to work with
+Yale staff to generate a detailed analysis of requirements for Project
+Open Book. Each vendor used the results of the requirements analysis to
+generate and submit a formal proposal for the entire project. This
+competitive process not only enabled the Yale Library to select its
+primary vendor partner but also revealed much about the state of the
+imaging industry, about the varying, corporate commitments to the markets
+for imaging technology, and about the varying organizational dynamics
+through which major companies are responding to and seeking to develop
+these markets.
+
+Project Open Book is focused specifically on the conversion of images
+from microfilm to digital form. The technology for scanning microfilm is
+readily available but is changing rapidly. In its project requirements,
+the Yale Library emphasized features of the technology that affect the
+technical quality of digital image production and the costs of creating
+and storing the image library: What levels of digital resolution can be
+achieved by scanning microfilm? How does variation in the quality of
+microfilm, particularly in film produced to preservation standards,
+affect the quality of the digital images? What technologies can an
+operator effectively and economically apply when scanning film to
+separate two-up images and to control for and correct image
+imperfections? How can quality control best be integrated into
+digitizing work flow that includes document indexing and storage?
+
+The actual and expected uses of digital images--storage, browsing,
+printing, and OCR--help determine the standards for measuring their
+quality. Browsing is especially important, but the facilities available
+for readers to browse image documents is perhaps the weakest aspect of
+imaging technology and most in need of development. As it defined its
+requirements, the Yale Library concentrated on some fundamental aspects
+of usability for image documents: Does the system have sufficient
+flexibility to handle the full range of document types, including
+monographs, multi-part and multivolume sets, and serials, as well as
+manuscript collections? What conventions are necessary to identify a
+document uniquely for storage and retrieval? Where is the database of
+record for storing bibliographic information about the image document?
+How are basic internal structures of documents, such as pagination, made
+accessible to the reader? How are the image documents physically
+presented on the screen to the reader?
+
+The Yale Library designed Project Open Book on the assumption that
+microfilm is more than adequate as a medium for preserving the content of
+deteriorated library materials. As planning in the project has advanced,
+it is increasingly clear that the challenge of digital image technology
+and the key to the success of efforts like Project Open Book is to
+provide a means of both preserving and improving access to those
+deteriorated materials.
+
+SESSION IV-B
+
+George THOMA
+
+In the use of electronic imaging for document preservation, there are
+several issues to consider, such as: ensuring adequate image quality,
+maintaining substantial conversion rates (through-put), providing unique
+identification for automated access and retrieval, and accommodating
+bound volumes and fragile material.
+
+To maintain high image quality, image processing functions are required
+to correct the deficiencies in the scanned image. Some commercially
+available systems include these functions, while some do not. The
+scanned raw image must be processed to correct contrast deficiencies--
+both poor overall contrast resulting from light print and/or dark
+background, and variable contrast resulting from stains and
+bleed-through. Furthermore, the scan density must be adequate to allow
+legibility of print and sufficient fidelity in the pseudo-halftoned gray
+material. Borders or page-edge effects must be removed for both
+compactibility and aesthetics. Page skew must be corrected for aesthetic
+reasons and to enable accurate character recognition if desired.
+Compound images consisting of both two-toned text and gray-scale
+illustrations must be processed appropriately to retain the quality of
+each.
+
+SESSION IV-C
+
+Jean BARONAS
+
+Standards publications being developed by scientists, engineers, and
+business managers in Association for Information and Image Management
+(AIIM) standards committees can be applied to electronic image management
+(EIM) processes including: document (image) transfer, retrieval and
+evaluation; optical disk and document scanning; and document design and
+conversion. When combined with EIM system planning and operations,
+standards can assist in generating image databases that are
+interchangeable among a variety of systems. The applications of
+different approaches for image-tagging, indexing, compression, and
+transfer often cause uncertainty concerning EIM system compatibility,
+calibration, performance, and upward compatibility, until standard
+implementation parameters are established. The AIIM standards that are
+being developed for these applications can be used to decrease the
+uncertainty, successfully integrate imaging processes, and promote "open
+systems." AIIM is an accredited American National Standards Institute
+(ANSI) standards developer with more than twenty committees comprised of
+300 volunteers representing users, vendors, and manufacturers. The
+standards publications that are developed in these committees have
+national acceptance and provide the basis for international harmonization
+in the development of new International Organization for Standardization
+(ISO) standards.
+
+This presentation describes the development of AIIM's EIM standards and a
+new effort at AIIM, a database on standards projects in a wide framework
+of imaging industries including capture, recording, processing,
+duplication, distribution, display, evaluation, and preservation. The
+AIIM Imagery Database will cover imaging standards being developed by
+many organizations in many different countries. It will contain
+standards publications' dates, origins, related national and
+international projects, status, key words, and abstracts. The ANSI Image
+Technology Standards Board requested that such a database be established,
+as did the ISO/International Electrotechnical Commission Joint Task Force
+on Imagery. AIIM will take on the leadership role for the database and
+coordinate its development with several standards developers.
+
+Patricia BATTIN
+
+ Characteristics of standards for digital imagery:
+
+ * Nature of digital technology implies continuing volatility.
+
+ * Precipitous standard-setting not possible and probably not
+ desirable.
+
+ * Standards are a complex issue involving the medium, the
+ hardware, the software, and the technical capacity for
+ reproductive fidelity and clarity.
+
+ * The prognosis for reliable archival standards (as defined by
+ librarians) in the foreseeable future is poor.
+
+ Significant potential and attractiveness of digital technology as a
+ preservation medium and access mechanism.
+
+ Productive use of digital imagery for preservation requires a
+ reconceptualizing of preservation principles in a volatile,
+ standardless world.
+
+ Concept of managing continuing access in the digital environment
+ rather than focusing on the permanence of the medium and long-term
+ archival standards developed for the analog world.
+
+ Transition period: How long and what to do?
+
+ * Redefine "archival."
+
+ * Remove the burden of "archival copy" from paper artifacts.
+
+ * Use digital technology for storage, develop management
+ strategies for refreshing medium, hardware and software.
+
+ * Create acid-free paper copies for transition period backup
+ until we develop reliable procedures for ensuring continuing
+ access to digital files.
+
+SESSION IV-D
+
+Stuart WEIBEL The Role of SGML Markup in the CORE Project (6)
+
+The emergence of high-speed telecommunications networks as a basic
+feature of the scholarly workplace is driving the demand for electronic
+document delivery. Three distinct categories of electronic
+publishing/republishing are necessary to support access demands in this
+emerging environment:
+
+ 1.) Conversion of paper or microfilm archives to electronic format
+ 2.) Conversion of electronic files to formats tailored to
+ electronic retrieval and display
+ 3.) Primary electronic publishing (materials for which the
+ electronic version is the primary format)
+
+OCLC has experimental or product development activities in each of these
+areas. Among the challenges that lie ahead is the integration of these
+three types of information stores in coherent distributed systems.
+
+The CORE (Chemistry Online Retrieval Experiment) Project is a model for
+the conversion of large text and graphics collections for which
+electronic typesetting files are available (category 2). The American
+Chemical Society has made available computer typography files dating from
+1980 for its twenty journals. This collection of some 250 journal-years
+is being converted to an electronic format that will be accessible
+through several end-user applications.
+
+The use of Standard Generalized Markup Language (SGML) offers the means
+to capture the structural richness of the original articles in a way that
+will support a variety of retrieval, navigation, and display options
+necessary to navigate effectively in very large text databases.
+
+An SGML document consists of text that is marked up with descriptive tags
+that specify the function of a given element within the document. As a
+formal language construct, an SGML document can be parsed against a
+document-type definition (DTD) that unambiguously defines what elements
+are allowed and where in the document they can (or must) occur. This
+formalized map of article structure allows the user interface design to
+be uncoupled from the underlying database system, an important step
+toward interoperability. Demonstration of this separability is a part of
+the CORE project, wherein user interface designs born of very different
+philosophies will access the same database.
+
+NOTES:
+ (6) The CORE project is a collaboration among Cornell University's
+ Mann Library, Bell Communications Research (Bellcore), the American
+ Chemical Society (ACS), the Chemical Abstracts Service (CAS), and
+ OCLC.
+
+Michael LESK The CORE Electronic Chemistry Library
+
+A major on-line file of chemical journal literature complete with
+graphics is being developed to test the usability of fully electronic
+access to documents, as a joint project of Cornell University, the
+American Chemical Society, the Chemical Abstracts Service, OCLC, and
+Bellcore (with additional support from Sun Microsystems, Springer-Verlag,
+DigitaI Equipment Corporation, Sony Corporation of America, and Apple
+Computers). Our file contains the American Chemical Society's on-line
+journals, supplemented with the graphics from the paper publication. The
+indexing of the articles from Chemical Abstracts Documents is available
+in both image and text format, and several different interfaces can be
+used. Our goals are (1) to assess the effectiveness and acceptability of
+electronic access to primary journals as compared with paper, and (2) to
+identify the most desirable functions of the user interface to an
+electronic system of journals, including in particular a comparison of
+page-image display with ASCII display interfaces. Early experiments with
+chemistry students on a variety of tasks suggest that searching tasks are
+completed much faster with any electronic system than with paper, but
+that for reading all versions of the articles are roughly equivalent.
+
+Pamela ANDRE and Judith ZIDAR
+
+Text conversion is far more expensive and time-consuming than image
+capture alone. NAL's experience with optical character recognition (OCR)
+will be related and compared with the experience of having text rekeyed.
+What factors affect OCR accuracy? How accurate does full text have to be
+in order to be useful? How do different users react to imperfect text?
+These are questions that will be explored. For many, a service bureau
+may be a better solution than performing the work inhouse; this will also
+be discussed.
+
+SESSION VI
+
+Marybeth PETERS
+
+Copyright law protects creative works. Protection granted by the law to
+authors and disseminators of works includes the right to do or authorize
+the following: reproduce the work, prepare derivative works, distribute
+the work to the public, and publicly perform or display the work. In
+addition, copyright owners of sound recordings and computer programs have
+the right to control rental of their works. These rights are not
+unlimited; there are a number of exceptions and limitations.
+
+An electronic environment places strains on the copyright system.
+Copyright owners want to control uses of their work and be paid for any
+use; the public wants quick and easy access at little or no cost. The
+marketplace is working in this area. Contracts, guidelines on electronic
+use, and collective licensing are in use and being refined.
+
+Issues concerning the ability to change works without detection are more
+difficult to deal with. Questions concerning the integrity of the work
+and the status of the changed version under the copyright law are to be
+addressed. These are public policy issues which require informed
+dialogue.
+
+
+ *** *** *** ****** *** *** ***
+
+
+ Appendix III: DIRECTORY OF PARTICIPANTS
+
+
+PRESENTERS:
+
+ Pamela Q.J. Andre
+ Associate Director, Automation
+ National Agricultural Library
+ 10301 Baltimore Boulevard
+ Beltsville, MD 20705-2351
+ Phone: (301) 504-6813
+ Fax: (301) 504-7473
+ E-mail: INTERNET: PANDRE@ASRR.ARSUSDA.GOV
+
+ Jean Baronas, Senior Manager
+ Department of Standards and Technology
+ Association for Information and Image Management (AIIM)
+ 1100 Wayne Avenue, Suite 1100
+ Silver Spring, MD 20910
+ Phone: (301) 587-8202
+ Fax: (301) 587-2711
+
+ Patricia Battin, President
+ The Commission on Preservation and Access
+ 1400 16th Street, N.W.
+ Suite 740
+ Washington, DC 20036-2217
+ Phone: (202) 939-3400
+ Fax: (202) 939-3407
+ E-mail: CPA@GWUVM.BITNET
+
+ Howard Besser
+ Centre Canadien d'Architecture
+ (Canadian Center for Architecture)
+ 1920, rue Baile
+ Montreal, Quebec H3H 2S6
+ CANADA
+ Phone: (514) 939-7001
+ Fax: (514) 939-7020
+ E-mail: howard@lis.pitt.edu
+
+ Edwin B. Brownrigg, Executive Director
+ Memex Research Institute
+ 422 Bonita Avenue
+ Roseville, CA 95678
+ Phone: (916) 784-2298
+ Fax: (916) 786-7559
+ E-mail: BITNET: MEMEX@CALSTATE.2
+
+ Eric M. Calaluca, Vice President
+ Chadwyck-Healey, Inc.
+ 1101 King Street
+ Alexandria, VA 223l4
+ Phone: (800) 752-05l5
+ Fax: (703) 683-7589
+
+ James Daly
+ 4015 Deepwood Road
+ Baltimore, MD 21218-1404
+ Phone: (410) 235-0763
+
+ Ricky Erway, Associate Coordinator
+ American Memory
+ Library of Congress
+ Phone: (202) 707-6233
+ Fax: (202) 707-3764
+
+ Carl Fleischhauer, Coordinator
+ American Memory
+ Library of Congress
+ Phone: (202) 707-6233
+ Fax: (202) 707-3764
+
+ Joanne Freeman
+ 2000 Jefferson Park Avenue, No. 7
+ Charlottesville, VA 22903
+
+ Prosser Gifford
+ Director for Scholarly Programs
+ Library of Congress
+ Phone: (202) 707-1517
+ Fax: (202) 707-9898
+ E-mail: pgif@seq1.loc.gov
+
+ Jacqueline Hess, Director
+ National Demonstration Laboratory
+ for Interactive Information Technologies
+ Library of Congress
+ Phone: (202) 707-4157
+ Fax: (202) 707-2829
+
+ Susan Hockey, Director
+ Center for Electronic Texts in the Humanities (CETH)
+ Alexander Library
+ Rutgers University
+ 169 College Avenue
+ New Brunswick, NJ 08903
+ Phone: (908) 932-1384
+ Fax: (908) 932-1386
+ E-mail: hockey@zodiac.rutgers.edu
+
+ William L. Hooton, Vice President
+ Business & Technical Development
+ Imaging & Information Systems Group
+ I-NET
+ 6430 Rockledge Drive, Suite 400
+ Bethesda, MD 208l7
+ Phone: (301) 564-6750
+ Fax: (513) 564-6867
+
+ Anne R. Kenney, Associate Director
+ Department of Preservation and Conservation
+ 701 Olin Library
+ Cornell University
+ Ithaca, NY 14853
+ Phone: (607) 255-6875
+ Fax: (607) 255-9346
+ E-mail: LYDY@CORNELLA.BITNET
+
+ Ronald L. Larsen
+ Associate Director for Information Technology
+ University of Maryland at College Park
+ Room B0224, McKeldin Library
+ College Park, MD 20742-7011
+ Phone: (301) 405-9194
+ Fax: (301) 314-9865
+ E-mail: rlarsen@libr.umd.edu
+
+ Maria L. Lebron, Managing Editor
+ The Online Journal of Current Clinical Trials
+ l333 H Street, N.W.
+ Washington, DC 20005
+ Phone: (202) 326-6735
+ Fax: (202) 842-2868
+ E-mail: PUBSAAAS@GWUVM.BITNET
+
+ Michael Lesk, Executive Director
+ Computer Science Research
+ Bell Communications Research, Inc.
+ Rm 2A-385
+ 445 South Street
+ Morristown, NJ 07960-l9l0
+ Phone: (201) 829-4070
+ Fax: (201) 829-5981
+ E-mail: lesk@bellcore.com (Internet) or bellcore!lesk (uucp)
+
+ Clifford A. Lynch
+ Director, Library Automation
+ University of California,
+ Office of the President
+ 300 Lakeside Drive, 8th Floor
+ Oakland, CA 94612-3350
+ Phone: (510) 987-0522
+ Fax: (510) 839-3573
+ E-mail: calur@uccmvsa
+
+ Avra Michelson
+ National Archives and Records Administration
+ NSZ Rm. 14N
+ 7th & Pennsylvania, N.W.
+ Washington, D.C. 20408
+ Phone: (202) 501-5544
+ Fax: (202) 501-5533
+ E-mail: tmi@cu.nih.gov
+
+ Elli Mylonas, Managing Editor
+ Perseus Project
+ Department of the Classics
+ Harvard University
+ 319 Boylston Hall
+ Cambridge, MA 02138
+ Phone: (617) 495-9025, (617) 495-0456 (direct)
+ Fax: (617) 496-8886
+ E-mail: Elli@IKAROS.Harvard.EDU or elli@wjh12.harvard.edu
+
+ David Woodley Packard
+ Packard Humanities Institute
+ 300 Second Street, Suite 201
+ Los Altos, CA 94002
+ Phone: (415) 948-0150 (PHI)
+ Fax: (415) 948-5793
+
+ Lynne K. Personius, Assistant Director
+ Cornell Information Technologies for
+ Scholarly Information Sources
+ 502 Olin Library
+ Cornell University
+ Ithaca, NY 14853
+ Phone: (607) 255-3393
+ Fax: (607) 255-9346
+ E-mail: JRN@CORNELLC.BITNET
+
+ Marybeth Peters
+ Policy Planning Adviser to the
+ Register of Copyrights
+ Library of Congress
+ Office LM 403
+ Phone: (202) 707-8350
+ Fax: (202) 707-8366
+
+ C. Michael Sperberg-McQueen
+ Editor, Text Encoding Initiative
+ Computer Center (M/C 135)
+ University of Illinois at Chicago
+ Box 6998
+ Chicago, IL 60680
+ Phone: (312) 413-0317
+ Fax: (312) 996-6834
+ E-mail: u35395@uicvm..cc.uic.edu or u35395@uicvm.bitnet
+
+ George R. Thoma, Chief
+ Communications Engineering Branch
+ National Library of Medicine
+ 8600 Rockville Pike
+ Bethesda, MD 20894
+ Phone: (301) 496-4496
+ Fax: (301) 402-0341
+ E-mail: thoma@lhc.nlm.nih.gov
+
+ Dorothy Twohig, Editor
+ The Papers of George Washington
+ 504 Alderman Library
+ University of Virginia
+ Charlottesville, VA 22903-2498
+ Phone: (804) 924-0523
+ Fax: (804) 924-4337
+
+ Susan H. Veccia, Team leader
+ American Memory, User Evaluation
+ Library of Congress
+ American Memory Evaluation Project
+ Phone: (202) 707-9104
+ Fax: (202) 707-3764
+ E-mail: svec@seq1.loc.gov
+
+ Donald J. Waters, Head
+ Systems Office
+ Yale University Library
+ New Haven, CT 06520
+ Phone: (203) 432-4889
+ Fax: (203) 432-7231
+ E-mail: DWATERS@YALEVM.BITNET or DWATERS@YALEVM.YCC.YALE.EDU
+
+ Stuart Weibel, Senior Research Scientist
+ OCLC
+ 6565 Frantz Road
+ Dublin, OH 43017
+ Phone: (614) 764-608l
+ Fax: (614) 764-2344
+ E-mail: INTERNET: Stu@rsch.oclc.org
+
+ Robert G. Zich
+ Special Assistant to the Associate Librarian
+ for Special Projects
+ Library of Congress
+ Phone: (202) 707-6233
+ Fax: (202) 707-3764
+ E-mail: rzic@seq1.loc.gov
+
+ Judith A. Zidar, Coordinator
+ National Agricultural Text Digitizing Program
+ Information Systems Division
+ National Agricultural Library
+ 10301 Baltimore Boulevard
+ Beltsville, MD 20705-2351
+ Phone: (301) 504-6813 or 504-5853
+ Fax: (301) 504-7473
+ E-mail: INTERNET: JZIDAR@ASRR.ARSUSDA.GOV
+
+
+OBSERVERS:
+
+ Helen Aguera, Program Officer
+ Division of Research
+ Room 318
+ National Endowment for the Humanities
+ 1100 Pennsylvania Avenue, N.W.
+ Washington, D.C. 20506
+ Phone: (202) 786-0358
+ Fax: (202) 786-0243
+
+ M. Ellyn Blanton, Deputy Director
+ National Demonstration Laboratory
+ for Interactive Information Technologies
+ Library of Congress
+ Phone: (202) 707-4157
+ Fax: (202) 707-2829
+
+ Charles M. Dollar
+ National Archives and Records Administration
+ NSZ Rm. 14N
+ 7th & Pennsylvania, N.W.
+ Washington, DC 20408
+ Phone: (202) 501-5532
+ Fax: (202) 501-5512
+
+ Jeffrey Field, Deputy to the Director
+ Division of Preservation and Access
+ Room 802
+ National Endowment for the Humanities
+ 1100 Pennsylvania Avenue, N.W.
+ Washington, DC 20506
+ Phone: (202) 786-0570
+ Fax: (202) 786-0243
+
+ Lorrin Garson
+ American Chemical Society
+ Research and Development Department
+ 1155 16th Street, N.W.
+ Washington, D.C. 20036
+ Phone: (202) 872-4541
+ Fax: E-mail: INTERNET: LRG96@ACS.ORG
+
+ William M. Holmes, Jr.
+ National Archives and Records Administration
+ NSZ Rm. 14N
+ 7th & Pennsylvania, N.W.
+ Washington, DC 20408
+ Phone: (202) 501-5540
+ Fax: (202) 501-5512
+ E-mail: WHOLMES@AMERICAN.EDU
+
+ Sperling Martin
+ Information Resource Management
+ 20030 Doolittle Street
+ Gaithersburg, MD 20879
+ Phone: (301) 924-1803
+
+ Michael Neuman, Director
+ The Center for Text and Technology
+ Academic Computing Center
+ 238 Reiss Science Building
+ Georgetown University
+ Washington, DC 20057
+ Phone: (202) 687-6096
+ Fax: (202) 687-6003
+ E-mail: neuman@guvax.bitnet, neuman@guvax.georgetown.edu
+
+ Barbara Paulson, Program Officer
+ Division of Preservation and Access
+ Room 802
+ National Endowment for the Humanities
+ 1100 Pennsylvania Avenue, N.W.
+ Washington, DC 20506
+ Phone: (202) 786-0577
+ Fax: (202) 786-0243
+
+ Allen H. Renear
+ Senior Academic Planning Analyst
+ Brown University Computing and Information Services
+ 115 Waterman Street
+ Campus Box 1885
+ Providence, R.I. 02912
+ Phone: (401) 863-7312
+ Fax: (401) 863-7329
+ E-mail: BITNET: Allen@BROWNVM or
+ INTERNET: Allen@brownvm.brown.edu
+
+ Susan M. Severtson, President
+ Chadwyck-Healey, Inc.
+ 1101 King Street
+ Alexandria, VA 223l4
+ Phone: (800) 752-05l5
+ Fax: (703) 683-7589
+
+ Frank Withrow
+ U.S. Department of Education
+ 555 New Jersey Avenue, N.W.
+ Washington, DC 20208-5644
+ Phone: (202) 219-2200
+ Fax: (202) 219-2106
+
+
+(LC STAFF)
+
+ Linda L. Arret
+ Machine-Readable Collections Reading Room LJ 132
+ (202) 707-1490
+
+ John D. Byrum, Jr.
+ Descriptive Cataloging Division LM 540
+ (202) 707-5194
+
+ Mary Jane Cavallo
+ Science and Technology Division LA 5210
+ (202) 707-1219
+
+ Susan Thea David
+ Congressional Research Service LM 226
+ (202) 707-7169
+
+ Robert Dierker
+ Senior Adviser for Multimedia Activities LM 608
+ (202) 707-6151
+
+ William W. Ellis
+ Associate Librarian for Science and Technology LM 611
+ (202) 707-6928
+
+ Ronald Gephart
+ Manuscript Division LM 102
+ (202) 707-5097
+
+ James Graber
+ Information Technology Services LM G51
+ (202) 707-9628
+
+ Rich Greenfield
+ American Memory LM 603
+ (202) 707-6233
+
+ Rebecca Guenther
+ Network Development LM 639
+ (202) 707-5092
+
+ Kenneth E. Harris
+ Preservation LM G21
+ (202) 707-5213
+
+ Staley Hitchcock
+ Manuscript Division LM 102
+ (202) 707-5383
+
+ Bohdan Kantor
+ Office of Special Projects LM 612
+ (202) 707-0180
+
+ John W. Kimball, Jr
+ Machine-Readable Collections Reading Room LJ 132
+ (202) 707-6560
+
+ Basil Manns
+ Information Technology Services LM G51
+ (202) 707-8345
+
+ Sally Hart McCallum
+ Network Development LM 639
+ (202) 707-6237
+
+ Dana J. Pratt
+ Publishing Office LM 602
+ (202) 707-6027
+
+ Jane Riefenhauser
+ American Memory LM 603
+ (202) 707-6233
+
+ William Z. Schenck
+ Collections Development LM 650
+ (202) 707-7706
+
+ Chandru J. Shahani
+ Preservation Research and Testing Office (R&T) LM G38
+ (202) 707-5607
+
+ William J. Sittig
+ Collections Development LM 650
+ (202) 707-7050
+
+ Paul Smith
+ Manuscript Division LM 102
+ (202) 707-5097
+
+ James L. Stevens
+ Information Technology Services LM G51
+ (202) 707-9688
+
+ Karen Stuart
+ Manuscript Division LM 130
+ (202) 707-5389
+
+ Tamara Swora
+ Preservation Microfilming Office LM G05
+ (202) 707-6293
+
+ Sarah Thomas
+ Collections Cataloging LM 642
+ (202) 707-5333
+
+
+ END
+ *************************************************************
+
+Note: This file has been edited for use on computer networks. This
+editing required the removal of diacritics, underlining, and fonts such
+as italics and bold.
+
+kde 11/92
+
+[A few of the italics (when used for emphasis) were replaced by CAPS mh]
+
+*End of The Project Gutenberg Etext of LOC WORKSHOP ON ELECTRONIC ETEXTS
+
diff --git a/neozip/test/data/paper-100k.pdf b/neozip/test/data/paper-100k.pdf
new file mode 100644
index 0000000000..b3325e4a2b
--- /dev/null
+++ b/neozip/test/data/paper-100k.pdf
@@ -0,0 +1,598 @@
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=10 M=100 Y=50 K=0</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>10.000002</xmpG:cyan>
+ <xmpG:magenta>100.000000</xmpG:magenta>
+ <xmpG:yellow>50.000000</xmpG:yellow>
+ <xmpG:black>0.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=95 Y=20 K=0</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>94.999999</xmpG:magenta>
+ <xmpG:yellow>19.999999</xmpG:yellow>
+ <xmpG:black>0.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=25 M=25 Y=40 K=0</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>25.000000</xmpG:cyan>
+ <xmpG:magenta>25.000000</xmpG:magenta>
+ <xmpG:yellow>39.999998</xmpG:yellow>
+ <xmpG:black>0.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=40 M=45 Y=50 K=5</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>39.999998</xmpG:cyan>
+ <xmpG:magenta>44.999999</xmpG:magenta>
+ <xmpG:yellow>50.000000</xmpG:yellow>
+ <xmpG:black>5.000001</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=50 M=50 Y=60 K=25</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>50.000000</xmpG:cyan>
+ <xmpG:magenta>50.000000</xmpG:magenta>
+ <xmpG:yellow>60.000002</xmpG:yellow>
+ <xmpG:black>25.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=55 M=60 Y=65 K=40</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>55.000001</xmpG:cyan>
+ <xmpG:magenta>60.000002</xmpG:magenta>
+ <xmpG:yellow>64.999998</xmpG:yellow>
+ <xmpG:black>39.999998</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=25 M=40 Y=65 K=0</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>25.000000</xmpG:cyan>
+ <xmpG:magenta>39.999998</xmpG:magenta>
+ <xmpG:yellow>64.999998</xmpG:yellow>
+ <xmpG:black>0.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=30 M=50 Y=75 K=10</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>30.000001</xmpG:cyan>
+ <xmpG:magenta>50.000000</xmpG:magenta>
+ <xmpG:yellow>75.000000</xmpG:yellow>
+ <xmpG:black>10.000002</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=35 M=60 Y=80 K=25</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>35.000002</xmpG:cyan>
+ <xmpG:magenta>60.000002</xmpG:magenta>
+ <xmpG:yellow>80.000001</xmpG:yellow>
+ <xmpG:black>25.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=40 M=65 Y=90 K=35</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>39.999998</xmpG:cyan>
+ <xmpG:magenta>64.999998</xmpG:magenta>
+ <xmpG:yellow>90.000004</xmpG:yellow>
+ <xmpG:black>35.000002</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=40 M=70 Y=100 K=50</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>39.999998</xmpG:cyan>
+ <xmpG:magenta>69.999999</xmpG:magenta>
+ <xmpG:yellow>100.000000</xmpG:yellow>
+ <xmpG:black>50.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=50 M=70 Y=80 K=70</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>50.000000</xmpG:cyan>
+ <xmpG:magenta>69.999999</xmpG:magenta>
+ <xmpG:yellow>80.000001</xmpG:yellow>
+ <xmpG:black>69.999999</xmpG:black>
+ </rdf:li>
+ </rdf:Seq>
+ </xmpG:Colorants>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:groupName>Grays</xmpG:groupName>
+ <xmpG:groupType>1</xmpG:groupType>
+ <xmpG:Colorants>
+ <rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=100</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>100.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=90</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>89.999402</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=80</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>79.998797</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=70</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>69.999701</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=60</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>59.999102</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=50</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>50.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=40</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>39.999402</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=30</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>29.998803</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=20</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>19.999701</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=10</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>9.999102</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=0 Y=0 K=5</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>0.000000</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>4.998803</xmpG:black>
+ </rdf:li>
+ </rdf:Seq>
+ </xmpG:Colorants>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:groupName>Brights</xmpG:groupName>
+ <xmpG:groupType>1</xmpG:groupType>
+ <xmpG:Colorants>
+ <rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=100 Y=100 K=0</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>100.000000</xmpG:magenta>
+ <xmpG:yellow>100.000000</xmpG:yellow>
+ <xmpG:black>0.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=75 Y=100 K=0</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>75.000000</xmpG:magenta>
+ <xmpG:yellow>100.000000</xmpG:yellow>
+ <xmpG:black>0.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=0 M=10 Y=95 K=0</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>0.000000</xmpG:cyan>
+ <xmpG:magenta>10.000002</xmpG:magenta>
+ <xmpG:yellow>94.999999</xmpG:yellow>
+ <xmpG:black>0.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=85 M=10 Y=100 K=0</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>84.999996</xmpG:cyan>
+ <xmpG:magenta>10.000002</xmpG:magenta>
+ <xmpG:yellow>100.000000</xmpG:yellow>
+ <xmpG:black>0.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=100 M=90 Y=0 K=0</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>100.000000</xmpG:cyan>
+ <xmpG:magenta>90.000004</xmpG:magenta>
+ <xmpG:yellow>0.000000</xmpG:yellow>
+ <xmpG:black>0.000000</xmpG:black>
+ </rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <xmpG:swatchName>C=60 M=90 Y=0 K=0</xmpG:swatchName>
+ <xmpG:mode>CMYK</xmpG:mode>
+ <xmpG:type>PROCESS</xmpG:type>
+ <xmpG:cyan>60.000002</xmpG:cyan>
+ <xmpG:magenta>90.000004</xmpG:magenta>
+ <xmpG:yellow>0.003099</xmpG:yellow>
+ <xmpG:black>0.003099</xmpG:black>
+ </rdf:li>
+ </rdf:Seq>
+ </xmpG:Colorants>
+ </rdf:li>
+ </rdf:Seq>
+ </xmpTPg:SwatchGroups>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:pdf="http://ns.adobe.com/pdf/1.3/">
+ <pdf:Producer>Adobe PDF library 9.00</pdf:Producer>
+ </rdf:Description>
+ </rdf:RDF>
+</x:xmpmeta>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<?xpacket end="w"?>
+endstream endobj 145 0 obj<</Metadata 144 0 R>> endobj 1 0 obj<</Contents 3 0 R/Type/Page/Parent 102 0 R/Rotate 0/MediaBox[0 0 612.28302 790.866028]/CropBox[0 0 612.28302 790.866028]/Resources 2 0 R>> endobj 2 0 obj<</ColorSpace<</Cs8 117 0 R>>/Font<</F2 122 0 R/F3 121 0 R/F6 118 0 R/F7 125 0 R/F8 56 0 R/F9 70 0 R/F10 71 0 R/F11 61 0 R/F12 65 0 R/F13 72 0 R>>/ProcSet[/PDF/Text]/ExtGState<</GS1 113 0 R>>>> endobj 3 0 obj<</Length 8934/Filter/FlateDecode>>stream
+hÞ”[MsÜF’½ëWðnm
+?‰ÖÝþ°«G³ÞqÏ p§Û¢õÝ_ßâ§‘«}}؉øü+.ÅDûöAèþ¹˜É¤$&þ¼
+*÷vÐoˆ¼:UçTæ¿išÍ‘ksØô÷?ây'ÒÛVƒ^4Ñm]Oß½ëŽA½©Ä$x‹I;#Šúй4Õ.|ö®ëý®oîýŽQˆwÇv­KÊ,ăñ2kd‡6ÕX‹
+P c§ ƒ] î©QÉkO‡NFšáJ_¶Øù•ɇ·Íz{θ‡C½nîš5”ÚÉ<Âòe’ƒÚH²˜¥‚Q`Su/JCSI£cÛüvôf“F·M·ëî¡asÖ£ßpΪ?™äŸÆÂ²óy»·Ý€˜'°#‘ó¡°ø;¥nåi*s¨ð#–}ðêÞõO¸‚ß×ëmÕ6າˆY‚Â^õzÉ .R`cß­aôXg|_޽~¬á"ÒÜhjñ@÷þͼ ú,Îø=qr‚Ðf²Î®½Â¥Œš40ÆP“Ûu}€ž`‘Ë@4Ë ë;ÂzRìÏ—¶{í»¯u,
+Çè]•¼E³Á;ÍÈ»p×~Í
+åU{¯»Q*0÷5á.õxr"ÎCŽ¾ë»¡;l›]uùñï³$ÍJĘ‘C…8Þ÷22´?¡Õá×@Hr… ü4AïØÉð$[ˆ­Z«ë3‰£X+!M²·Í?86À[T°¢>yúÙœh×ÝÒ°q ¢Pç$áð
+ŒY¸p%«öb¥#XŠ5¡|–b¥^Q*B;óN™
+UìšvôãÑqðQkýE€­ £ýý¥®dc§½½º%`ŸÞl%ÞýRÝ{‹÷J£?oê 8-㹟²DÑÎ_/ LÂWŠÂyÐùË  ®¥Ö1U#RÎ]q‘;$ƺHX…9”HæD Þz™÷I›ò\<Z"Æml’ãáOÑu«‘V“l*v\ @º8³§²«zÊç:/su•BðÈÄŠüQÀ?™Œ,½Ä!’¼L^8dŒ"È%ìðIG-‚=ƒKƒ\¸ƒî¹ë’EhúYŽ·B
+è
+S²b' –Uäp‹~tÜ…å6ûC×äs$Œt€Wh¿eÞ¢»+hªq², GFÙIHÆø[W5‡SØa<DèŽìßXÝî¦ÝSq-¾Í˜Ô1æ¨+£"G[»†‘!&f,Ý­pág‘ âä|ùž‰ùç­v0EÂQÍ`ÒŽIYZå)Ž+S ÄÔåðˆwMïï¹@Å]ÁàÚçG\¡Ñµc¬v[ŸøCÝ?0˜!ÿ¨Öâÿ8äÖC1Rµ<*—ªåùŸ`yqY¦ˆ!K5¦_¨Ñq7ß|èM ¾õQS›:¦Y0âªްYuÈIaf>]"B”ç] <-W½{0psõïÛæ¶¹¼f^HãGØè¾Ñ¸ÍÆÁ†dV`)0¥ÉÐÒØYohjVÆBÕ訅ôù¤aRpvã)øP¬¾ßO¢ûÓí%‰Ãâ̹ Wˆ-%Œ~©×— >ì-œ@¨Üe‚\›:¹‘Ô¬¸ ‡+pÌXÈËðI”ûRt/€·¸'* ÓO€.©áXIMh=N`B—šû©epxcš_ ±¾~¿»dâ¦~–§žÐR„‡'%¤ÚWº( &­£o×·+,NyL'³$RxÜa9™KBˆYXW2¿ÆòÓ¨ò³/0Ã,sJý1yX>(f$ÆWò(»J
+쇋®ŒÃD~äŸ1R­ÎáîûîQg#¨p©øpœ2 :}R·ŠHX0 ‹â= ³#Î1pëë:º­]³cö®ÕQ3&ŸsdÊëÙÖ̤j¸¾×íoF?¦ÛË8âV&Ñþ–Ó’™âñSnÞ#ÅÂ:tÂb0£2.£»±¡×žz••D-º‹;
+™ Åg­B$E»Ä³Mõt|G
+þǨ>#!›8ÂJM:>ž„3ðw•Îy².ê#®­Á’˜3—Ÿ:0QãIó.޵8k±"t›NÈZ}õGÍøØ%@i"çÜ·µL¥ž€·5)³½w?/Æ>Ñ+ú$´.&Ž¡NØô3ꔈ{[ª“-R 韹¡n>Êuš e›ã‰P 4~ð€z¥£åZÝË](œiæîð~ð|¢Máë 6A8°*¡Ÿî‰®;Ù:±üMãõê‡ùh‚!÷¥GͰþÁÖ#;ÌB­Î¡±jPë
+Î|J1c@«Ø"ëA¾'cÝeI3ÈŠ°Z²G£#s>]žME÷Ìnó,ÓÑR\ÉFuNT':òƒnÉöjœD“JÁXI…¹gc÷ëq«¸Ðm¼†
+*Tnn¦•qO›iÓ&÷
+Iy|Á PPu9UšzFÄZ5εñ Cr6J´Ðn¢/·¡¾òØx=ØHÜ!Ïc<öÜQ÷—¡¢–U:ÊS^†&7ãÊÏonBYw‰Äò s}W“­QYêtÏÆa£ºÁú^AÖoÚ/r
+5yÖh"Àë1/`•÷2gÊ&‹Zêå·O¡A‰[5H®RA
+(O ìÕ-øE§ü2Øn¡˜¬ñ¼Œ&'ièºëtrý~ÐE€")ñÚ#g)°k­ñ
+ ›”@êmS+Ô÷U¯.j½Å"ô­P©ˆàõ µ{•À0zÒ'eÌò=MP´S•+5ÊK
+§èçQÞæœF;ïø`ŽŒ £!žñ׺ÿh'pq*bY ‚øP{bÙ€XÀ!²0[¦´'ȱËó3Ä-sjärMÃ:“7¾¦ì³Ï}i;tÏ;2Ùjݽ‚Á
+ V™†Ñ¨B›6ùCíÏ
+µÕ ¥Ù(
+é¼Ïã2Hù
+«õVr}PUê»ß}*pÏRiæœóKÇä‹Ù³c"l®´+Œ¥8&æy©²ÇݨDoÐôš™iü@hr-Ùu8Sd)ÆeWˆìD
+þú
+ TÝ4>55§îåÎܬÓ_눉8Û3¯¼SíYéMÙˆ tþ¾mî4„BXIâÞŽA…õ•<.}ûú"!‡.ðüõÌd>?3Aq«ÝæÌ‹xîHÁã—Šžt} lh*Qô„®ðLPô3ÉC{ËA+Í¥Þ[Ù²Ìü½“Äþêz'ñw’—/ýéÙKiž„·ŠsoÉEúú›×óý$ö¤¡(ž
+{giÉÿ´â0sä
+úäIÌÑŸŽ›¬â8õ48²'eö—ŪLL"ã\FxË _¬BOù!¬óÑ'o¯=µ`$žjð† Ï̵õ4ËÝ©Â#,$Y¡·†×»ÛØãÛµì½ÈR²…Gíª,|{`²Œ§öWlÐŒš•/†¬Âpïí¿«aÕšÉ%ã/·÷Š—è[Ó$¦G’¢RŸ"/ŸAØiôŒ£;F«ÓË6ä”’+um`P­þ,ÎåÑkë‹€À••¿¥‘ŠŒ^T½tÄÇfTˆ‚'Íã)É{.\¯Ur!|©ÖOÚÄ
+ÛùÙS¹ªÔËvíÿ*
+ ¡ó«…Å!Xwµrñ»»Fá,ÄûäýXÑ•vvºhë™0z +õ'wJ)s² üüî]hµízoá‰/1#œ—AËû-—ø+Æ/ÇÎ6ñ=ân–ò„f©Ý˜`7‰µötÄòåˆ/­-óÉî(þÀ†¨¿ežÍ>Ίe£h"ÙAOàä'Þê¡ñ¶yôám(‡K@ ®6®~J2U#œ
+Òã<‹â†²ÖãrñJqÃä¢óé[ä $ÊÓê‚o0-ó¸xf>f¥A´Q'n¼C*Ë9»Ṳ́ÇOÚ–œè VJ|×vœœØ‚ðª?2*“×( XЦdø\îÓ0)IPÐù«sföèOˆœ§ñ.Í7Î'‡£N£
+„àÅâ8ÉltGÖšÈü®,Ìœ¡Œ¬Kñ‰dîÆG´ÆdOšH^e1g³µ›pÆ5ö%Æ‹$æ$¯Aé¤/9hoZK¿Ä`_Z%SæBõPVçß[þZ¦ì´P7‘ô/¬¥±ŽwV•S6p½O®´‡Quîl6à ×” ˜­F±akï׊¬–'d§yvÕèyi¸ù*m4,Å>éÑ ÜG]ž“Õ 9D7ÿ"˜¶*™éœ¨ºWíAØh8ªD\©›1¥qšuÄ51Ëc¯ƒ÷u«YÔéñyÜתkÒæÌŒÏݱ+ezuœˆÝ¡80T,•ŠÉÀôäÜJµ®™*y‚+š¢Â”L^5•³Fæ–µ¿îzãV1àÜ›gª¼ì¡eþu×­µL[yzÝü#ä·¦cƒñŒA¬m“´×GôüDÛþL-d>ô©šâ{[sGžíÉ•,£ê5yþ¥i5,çiKàèäÖç ôv7eÈä™W
+ïĺ‰ái´”[v¡Ÿªx~ÊÖe@UpžéRDOÿï¢ÂUhâåV•F;€uCǾ4Ö&Èä!ˆÖ¼æ3Ð,§3xeÁ(ÏCHϵÍìŬ,Ì{Ë¢j ¯ðAsùJè6ǯBäõ OÆÌÏ€+œ}ø ɯp9)êÈeš;Á)¨g…ùäe»ÓrŸb­Z«Ã‘7N}Ç£4)[V~¥ñæš‹ãóVû@õ‡›¿©P?œe·ýÏ_~‡
+—%Šø_ßþ ëæ¼-wQ[ž ól‡¯²EÏ6bÙ¤çåjc{޷뫾ÖÀs”ÈÉøLÆ2
+#œDiæyé
+m—È8#ˆuïK˜€àhÑæK#ziT”\Ýûá =e̽òݲ±ž%œ>â¸'o?þ¬¹Þ¨'–{H4Ày±'›ªõ•LŸ=ÇÌëÞ‡x‹ŒŸ¯…ŸÇ‹»jí1|}óc£ª‘^i‹¾ïÝÉÕùtB×}¥[Ñ~¾„VÀ;-9¼l¯ÔNï§[pô#[rÂÙ–øùäë«s¨n!à†¹OŒEtôp·`ÓÜôÖí|v+bþE‚R»šyoXT€`Ûãz§Uw(#äE¸ ¥žRõm÷à3Oý•+´©-ÖÍBoU`úÇÆ{ÌmóŠäÎUÐî”jë›0ÎvU0ù{òÜÕØÓ4AÔ#x/kqC8øÉ&‹(Ž£/^Ôs²äÓY×g2›ê"@grÞ½É6Ò™™â6˜ÚðÕÑL9À9·.o³KùœMPºWtôu)="kúÔRfH©ûkßÊÓoØQ‹Î¤Ä¼B[ÎHi}?Üqí‹sSŠg“°©èxËOhï¢ý” ­S )·C¥Ìa)žÔºYð:ìk=ƱYóÅÑ—".òS²èar/{˜DÒ¦Lç¢t:µ h¢MlÈæÏÚ²KL¾ŒbxD®ºÑÌAÆ/­'–V˜å¥#”_lÇ×wŨŽ{ù-“å™P3´¯°ŒaæÄÚç„ô09úpŒ,Æœ,†ÿsÕ¾;Ð+šW!ÀEëÏ _Ehí¾çÔ­•D6•vÃ$Ñtxéd›ôŒ¢ß&ÜwÑc£my82Ñ+pÔÕFO)ŠW%_6‘AˆgYý<ÈUÈ*<n½åø´Ä3êMœni5Ó½ÂqÀqb½‹Ãp}ã KäWégà™¾[úPuWõ°X¹liœ
+&¡åÁ~& .XÒ9wuãøÛ÷¨K!^¼¿÷aëÀ#IŒ<—ùËs•'ÛõöÍýV‹˜þ©"ºÕšµòÜwh×’oðäPªÑõ½?K1ù!dª‡—…ÏDõ¬éÂÄ!¦0ÙÊüQ. Ý·Žn@Ïú)`ˆ‰Î-† ½ÛðM<pRéÅiçŒOEð¡„
+åáëïfÇ(<ØIǨ…Cí˜ <ÛºñÕ~S=7½WŠ ÷´¬ÕÐXbÑ•¢…yåè„ÀFTÿ~ÐjlÝû¾çEc§à!¦ÐùBä°üÐ +Æ«ÀâhÀo*…cZ]6Úܬ½ª)!oB9¼jv¾Aš­œ€ÿrªkŸ.«d)’†¿pó˜õïkÕŽÝq£„ ÖË2…oÜu³hÐ÷ÞtT¿!N±ó]ÌÓ‹ó¡ï?¾ùæÝP\¬‡‹Uv1¬Û7è;Î/laW±µè3OLr‘fñ*NÜE_¿¹{óíǯßBY!ͳ‹àdKߊù@cžG°¦ÀXž' nŽ{ÄÂz¤ëéô0×ËšÑô$‰kS-}[ ³D3Zœ0%,?Œ¶p£w1ŽÙÁü ¨ˆÐ 'EgñÛ•`®zÚVo$ÑŸ‚—ÏѺ’mK•D‚wÇÝIì—¤þ˜Ùæ¨G·¹ï`vÌ´ÃQ[û|"–ç¯2 “g§„`WG‰lôÔeégmÙ»-⬛x’9¦Åçc—éçëßyZÛ÷­w‡'¥k‰¯Ï·¾É XÆANÖ4èÕmÍ´z–y4Õn¥/ZX›ØY¥Ã'ªÔg¶@Hã¹ Áp ~k!"Ü¡ªŸù#£ÈóIÆ+}ºÔÙ"S.AÎÉw-¾Ã3\¢¨Þ~lÌ®¢a였5(~u¹1
+\ O’¥Õ<åmÕ©&PŸÛjàBXd`´‡®örq~V¯ ö&¼áQݕ䢋ݮ_ªþId7LµÒ`§&K4ª “Ö*mŠÖΞu¢ ½ã!O­á! kZIÆVêzþØ`i2ÂÓÉ[gˆ'÷”a\<ÿ¦e¾XÏÏR¦<Åû“þ?y ±¡õÇæJ8Âf“s²­qxYëf9{Ÿ„Wì€*ðo9¼. çˆ æÃ9´v_µ­fë}Êqò@齞v6ee°%´f™g uiPPVËy$[w e™Õä>:p|+ó<öá¬ðºîµ„Æt}8…,!e„óÉü4@áË„R\s!{ô>ú%!–e
+éÌþ¶·É0ÒZw?ŒO~cÇ=L"RÈ'mSQhkŸ£Y¯ð9
+¨ëŸtË žÿ>·ç}½¯T-ŒwÆS0k Í»ªG ®‚Ý÷µÿKâËV6Uøg½’l×ûšç"ñªcéOGžQ¢ëe÷âtd=ÎÙyyÜ<…*‘J-V›Þ©Òoq€ z[áå…X@4¯Va`ñ) ‚º? Ù-aoN`,‡ÝiîšÙÀ´*¦Í…æ¿ü™v6j›øi–dçØÅS…4DÎõš¸ :QßæÜð°ƒ>ü·Z‹¼l­êúQ]güÎõYêà"ÁïÍb}$ˆ âP#í™è‰òqŠc²¥ÍiGY^;ò;®äaEv0ÌÐqಙ±Þ•“¢º¢ -Œ…¡øª^ÌJ
+€£ŒCf© `Ü ôsthC“ÿ‰BV.ÿ]àXA™+YýýDZ’mGÓ'̇ ˜ó£Li7ŒõÓ‚F©¾¥ðÿœè[нÿ¨Ð¤§­ E¦¼¸.e‘ÂQuù?ÿå§›°ØwÝþp9
+ÇtZzy]:œþ­jZËM±—iœX§e§ÿ«Û÷µúï=arÝ?`KhŇaÀ &ˤk¢¯%óûuÇÆ&e/þO€
+endstream endobj 4 0 obj<</Contents 6 0 R/Type/Page/Parent 102 0 R/Rotate 0/MediaBox[0 0 612.28302 790.866028]/CropBox[0 0 612.28302 790.866028]/Resources 5 0 R>> endobj 5 0 obj<</Font<</F3 121 0 R/F6 118 0 R/F7 125 0 R/F10 71 0 R/F11 61 0 R/F12 65 0 R/F13 72 0 R>>/ProcSet[/PDF/Text]/ExtGState<</GS1 113 0 R>>>> endobj 6 0 obj<</Length 7551/Filter/FlateDecode>>stream
+hÞÌ[Û’äÆq}çWì‹#0Ž™.uá‡%)YT¥][K>`z03»M
+¿Ì=‘-·.Ï!þnçmrÛj|T&ÞõíUžb·!|ÑáËSU26ýS2É®ÖMxÁ•Ìñ¶Ÿu¨¦ÁVeÆÅÝÕéøË¢ÂšÞÿ3V‚ù@Ínwøº“A®nŒLÇR ú‡›õëÔÇñ܃îÝɈ.¶œG‘´ÇQÅÒv Ãh‹‘Éy
+•ßl{¡Júf‡Uù¤[Ì¢HºÃðI‰Jã‹Ï­l‡3òÆQÕj×^Q7ó¢¶âÂçó*•Ïížfá“Ã(~^zä ÞΖšWNž>4?Œxˆ{ÜLzÛan2Âp›Xé3^)ñ©BÀšñbå©jaØVUϹIïÌ,‡¡6œý¯~S(žT"¹#\„ˈ'N.r—åÀ“Ég¢X7NF…b¢ÙX`ßR¥Ä´ Ñ¼ÃØ··'™”LÎë†è-ÅŽT^ýÍ™ñu>€½1ïÚÃÃl
+™ãÚág
+0F(=8G;ŒqKkÕola»“§º7ÈÛ—ø†x‰¤~“|Ù( ¨e˜ Ööövнév'Uƒ‘Ô ÊøN J¼ïá;%õþ­fÖC=ÂÓYò.Â_³•äÌm…Ë?1¤‡çY ?f“¯šñQ—ÛÝ JÝLrßõ—¬ç®ë€O»AÅöÍ•`hÚö¡°zïÚXE›o¯õȲpˆŠ"ªðN™²÷ÇF©ãžK Ë3oj’<C¸)ÈÃÆ:v™›ƒ²Œz§± Vê –æ4sHùŽ»FïþÐŽúièhî–¡ïNP0ÀQA ­£'ô‘˜Ê‹Q%_^½ÿËì#Å r£LA¨£wå›ÌUÈmþÆZD'NF¼d’á­×5“g„NyX´?Ä)’Cë÷J;«åúqÇ—MœëÛA5wÅwê‡5è29Å
+S*›™¹¹Í¡C+·9 öuôÐ7£ZË
+s1@µ4)Ljƒ{ØÑ?5*õâÑè<ð góœ²z BÄ›ªè‘¾ö“€Ø1eø è‹ÅjE<µZÀ“\&¡…¦Ål )49ªkÁv5Om §
+[Q†ÇvGç!ß&¿æJƒáÛrËÌGsHy!üÉ­Rm<P-_ì›ý¼k
+pbÚ­»æ>Ø/· < +±Pª¯?ûL½uÆ$¥¦'<ܾ©ÁTf.`­¦rÛBH‡&Fâh»R–3Ú€ÀNpz¯Òùs³ \õ:’ºdØ`‘j·{ù18æ c1;¶×ÄYL™1Üڧ&f³ŽÝ3y“åbFmx Ù'—#Šû3áÏÑ½É ü Yìš'*#ySåq9¢¼¿t
+²pë¿Â­4ÜÂòõNîdᎩ*nýËÙK¹Ïâ[6]Å1HI|¨÷à€¢.\‘dŸª’EÕ!æ¿;%´Ú ó©û—A›ªtÅÚ”çÀÉÞo¯•y™äSuiÖ³"NîÄ
+³`Œ©¡’† ZhÇB\é&À_@»W†,ð䫵GÛòyZFãú׫›ÌÂ
+¶e %ˆÔ™¹ûÍÈ• :ê_qÇ&ŸÁ¿Ò §«ª\«Õûú»†ô¯Ýý ½“S˜HÚµ6>¨ã,è%·]NR ÒÎY Y
+`ÿÐîe’ŽÂ'…ý§kežZ¥DÈ.)ìS-È+¬Pš*×Ú±,¿þâbsfÜ&­¼û[›…ÀŒŒ0Qäb˜GÇ…ê3fµ"ñ±»Tzþ?.-gð÷E¨,ÿÛq¢6à:ñ¹Ò¼¸Dø¢`=<¢6l™XœÜ¶-cýö+\6C,` ­6Ý},°ÐR/CÇõž–ä¡õ‹ð6„¦EÐг¸žCV>mðN1`-dnC LOêô?Û-“?]CÎøY.í"n"5,à ‘)…8‡)–e7[ %7ö
+´°%™s5lQœòrYx³–èZ,–"¾p¹ › ?¦¯9~œ9ƒË!`€Ýç¨R9r@ø:ÇìüšŽMö½®æ4~@K`^!ÌAòl)±ôÊOmw
+cÐ1ŠˆÙ›Gù6¤¾ýôf )J²ý»€'Ú^çÑNï»a‡ÒÔ@©õ=-›
+[w®ÌÞ‹I `3¢&"ÚBSݨ±SñšÈiHÅÜ—h#ScÞɦږŶšƒ> ¦Ðm›ah†Îq%‚«ÂqUHnÈoÆî†K5%‰»ø&èb'l1´}`‹)Í4ÙàÅʘÐá H´Ý®{½Þ-?ZÄ>†Ó(ï³¼i,‹¯Ù ®Æ±Å%fH1ë̾)d4lcˆœKgËÂËY€xaÁë
+€½æºW!Xá³)CÎKÛfœÓ0`•Ô#¨R‰Ž»¢ñ&4RB‡.l
+é;¨ÏQ¦ÓÉZ63ëôîÙE ®Ö†°)krA²…Clóýü"¹œ–S"
+Ùl­,ðµòfÛ„2à„oi5qõkUtŽáS²Ù„[2FÒüðØÞ¶cìßuÏš|È3¾ÖŸ
+ #S7©cÁÚHG°[ »šþiáÇ.ãØMï2ùùÔ>uë8Lt¼È}T€cÓS¹:kyh¡Í<GBÓ ÔÙ" ]‹SvŒ-
+C¦’#6­c'ûSô_®Ôݪ\úõs;žFªî£`vFB>å”y•áQÀàNÝî”îa¯֒À€lb©`æ«Ö¾z­dè \Õýä/vZÎ1²þÎC|ÊsÇlÑâ+©'!þu"Ù,Žïë—XeN÷2`8²P-’YwÒRêU/hÚá´¿Õ‚˜çË,ï›¾ÑæTÜÚ¶ýöÔŽ¡A¼ä>Fé‰S‹e(´áxÄ £ñéE6ªo×­s‡ö}_!ôNû½@Á5þFã@Ñ—Õb§ôwÝ)y'xsvä“ã~óD¾d³ÌÍaùB¯W¹"ÃV-f”IÿÕ›záUyÁ¸”áÒŸerYŠ<Á˜jŠÉC²á–0Ÿ8;íØG–Yk,1)ÝžºÝS¸u K…Tò`Sµ! iþzA¬ËW)™Y!!¢åßgÙ`I“&³.ªÚlv§…‡C
+SM™tè|,ç1=€î¥jù+õÖ!¹$—°¡Ú-sYH‹P‹)
+=€ò‘\™ª²Yfy6}†ÔmZUùl_™föRþ,ä‹çc\,Jp#´ÝYãÛÀ1™Ë’ˆƒ†Ç!Ü/X2;?Å1çÎxR‚äPŒfw]—×V)‡Wy3öZ.&ã1ôVßTÚŽˆTãä˜È‚—<¬BnûòsY¸Q(â´(åÞѱs‡F©dÍ\n&«zPgÙ¦i²ŠI-üʲËSó¢§²IF|ätn>¸`óL´Ûô\2ŽÆ¯s­j ìlºìÒuÌ¢„F*Ç8;p¼áٽࢠí^.›ü"ÀÖ('Æ™ŽÇÚèœÕ¾¥A]YÐ5‡i„T `
+çÙ¤}Š•öu”µ,v\bß¡㑜 Êøœr_æ#
+jÆa“÷YÄâ‚åK5y¯ž?2_ÒÃúâBŽíL>»
+Rì)<FjSBËu¬|vf{““˜Z°(ωÝÓ£
+²]¢ ÇŸÌʯ¼Z´p[çý»7ÁœÕ·5²?—©ÒÐÚô"0]¹³ø¨ r€{*–aÞ“Š¥ýö½(]öw¨ðg?Yá7öµVö¶Lå{&'ÞŸ³›G“¿ÓBj;T}jýy(܆”y51žœ'
+Mb 7,¤ÿû!t™M½—Á®*L¸iWý^jôÚat¦ßQ8ZêÌÍDG-;FtÔæZø˜•’?•‹Þ•Zí† Ïâ×ÇÂÄÝT>.‰pV1Ì”É*—a«Ò¶2Ÿ:0½à¤:¨lh³*%ÔºA[ïæ¢r`Ùýа5I{©ž Tmdžø9
+mQFëæ¬ëLusWÄî íªšbë4²î%> cŒeS¶Dí 8iHc˜–C"‰]:ˆm˜ùL1‘ÕãeìøðÁhC3ˆvø, Î:Õ/ÞXd¤Iÿ¦-¹6µåÇ|±³15kÜG}1«c>ñ­¥—iwšG÷S&óZ{›mr× Çvlôn¡¾‰ç\Cq˜GyWYö, ¦* ÖV«
+Ã?Š˜Šì'ÄÄ#>È£h>ۼ纽åÚgö†ë¹¢Ð9˜©èÉ£œýñùR{yˆjÖð,–Ä_ ë•gÉ#4¼¡'7¶ÿ³$v뱜<a»­0·H¬Q1!Ì”¿lbóï{…P[ú)st¹¦9§‘pî²¥Í]X\ìëšúµ ,[DøÌF-NyHXÜww§PÂÀPá„‹5 ê•1q޲ÏB¦·îÑ")&Jî;…§ú°\úóô{΢Oq¡7˜¯Ÿµ';3W¯o.#Pè2«–\ÉðŒ”J×eò…x"ž0<ã\Lû
+VÏB…¼ ÑŸâN½7—y ÖÞxúU³csɆG$˜•ÏåJìÍ/3÷ÚÅ"ˆ˜>
+DãvË…‚<4јΛ|Ø€`íܾÀyæl\[æ
+endstream endobj 7 0 obj<</Contents 9 0 R/Type/Page/Parent 102 0 R/Rotate 0/MediaBox[0 0 612.28302 790.866028]/CropBox[0 0 612.28302 790.866028]/Resources 8 0 R>> endobj 8 0 obj<</Font<</F2 122 0 R/F3 121 0 R/F4 120 0 R/F6 118 0 R/F8 56 0 R/F10 71 0 R/F11 61 0 R/F12 65 0 R/F13 72 0 R/F14 80 0 R/F15 83 0 R>>/XObject<</Im1 14 0 R>>/ProcSet[/PDF/Text/ImageC]/ExtGState<</GS1 113 0 R>>>> endobj 9 0 obj<</Length 4318/Filter/FlateDecode>>stream
+hÞœZÉrãF½ë+t™pF„QPð­7íðÒ¶¾´ú
+zšj1q‘tûí‚Wñ§)뺚H5c_Ý6Û¦­†öéæ$Ðz?ÐV´Úæ9­©Ÿênä+XW’F°u¢Ž³2Üö«ºÅ•,žð¾ û4ݲ݇¥¹ ÂÊÒŸx5¿­›/ª±^ÎÞÔ.A“5Lêe¹ÉuÒÖu _Í‹T‘®û-=“D:ùà²<‡6î‡ø´Ý·SóX M5…=óäëfµb×'¡óäûjøÔ?žNÿ—"Í-9‹N–tN5ÁØ6ÃÆ‰¶åWA'«§?â§§Ÿ"”ÍJz&¼ûáÍoßÉ€¡¹æãé¬U³bu‘ØìÐÜØlºfÝ,«nj¡DºF™4ÛÝÐ?ÖòóÒ¥0b¢S±Ö-ø,ŠÉ%èöêÅ(ÎíóQœ–eùÄp¡âªBÿ)†­³ªn…—síRE÷¸ ÉU5q
+¨Ø³ÁKhæÓ>Ä
+á-bìJjcSœÄÉ*XœjA—G®Ý#lÈS½ø Ý›Üòèƒt8Ò#8B„ጢó òaærzOæ#XS¢ó¯k
+Žg²².,{˜e¬Ü’4È3 /oV4‘$‘i!Ua’O¾«Æ™¢Ä
+Ÿ¦T¢¡Å™ÂÕa9˜£‘„,9ìÅñT€@@ŠlÞ=DTnÉË›™¢‡;z
+! ¥€¸"%ß1ô€ŸÍ8ײår°¢-m®6SHÌØl‰8ÑîJpÒxP‚-=ŒF?:HO±Þ>ý1S`"@œÌÁQxªÂ=±3"êô–’ D@%V$ʲYhzØô,]-ã*`cÍÑh!ÚØ@Çã8Š’Øº©q”¡Õ4#¿Ô:‡’B–Æ Ž±„[$j/>E<lù@[–ÐÄcO©x"Œ¦î!™nœÄt•ˆEñUµt ºv Å>N7â›¶št¼XàRžÈnð¹Ä÷ÉWŒaª¶\bH'Ð&ëuÉT ´‡ <à/¦)x‹›¹•D1 *僆y9b›Û‘ëʾdCámðW-î–‘ºü¦Ç+lkÞ“LÃ<3î3!ÌáJëç\ÁåyW0Z`PËsH0É¢’XÍ
+ Ç;Ü¢á <™Ÿõ4ÍX=R,‘ æä4B^2ˆòÁ:l©“P¯Ê(ï²ò3˜t"®'×TÌÎñŠE_Õ;#tZñ| u­$`Õ2`Pä žjv+böeDƒwwW¿]YhÇjNPTm§%UÜ\‚ÛkàÊÜõr{õÅ7[uý¶¿úIŠ÷À¯i¯"“¥á1ïsJo^R[,Z-Wu*Ånt»|¨A‰–RcX$W²ˆ$…À‘5ZuLç–£Ÿ Ó?ËP#5ª˜—+U«A)8‡Y2P’^
+rѵü(ƒ6²âB¦ô\E†ŠúÎ2acôy¢1胰ûX)5¡¶™Ô[wýÏ7²ž2v»¯ãÁtRMbiË âŒUÔ#ù©eÚ¨$ÌÞ£dÂh3XòX×yÑ3i–±¬[_–ad›Â—ìváÑ0(“—Äg)®¼+àw‰Â²Ï}Ô’—[¸k.
+bd˜|ΰ±
+¤¤*ÇÓ…¶Ó‡$Mg(Ï£O!¢Ña27¨âfþX6fæü*Ÿ_€
+âåâlc^Œ60P•]Þäñ
+Ãl»ml ‰ÈåTu›¶alS
+ÃÂìö!ÏÛX {”»äÈCó{LL
+x?WëgiÂæ{Ÿ,úiâîwDÖúsœh,
+<Vœ÷'ÐôdO ¬'}3ÎNu·¤¸æ+£jAÊ”
+ççg[WgJ .˜ìêa»Ÿ¤c‡·Ç8W¥óþ"Ò‰9tL¥F)8ݪMRÕ„BÏ"m:épßélÅ$M‚¼àò?•ºÉˆ·èœ!ö´¸È0 /€tœ« Ðñý(µTÁ½©Ë¬,”]
+x9Þ— -\žR±®¤0Ã"Ôáú¡²ùºoW±h[=çÿ–~¬Úf%™¿Kå…M^A67 =-ÍÂx·ñX?EÆàþæ6!}Ápà‘Qº¸¦ª4U¹7ך\£´Fÿ/@I_#þ|Y
+±Ís$‡O)H_œ!å“…9á~ÆpKxþ8òg­¾8.€–`c“W¿]ÀƒœžU'DŠéî/j§RlDfbGvåÙ„àò”“? kÅ#Pà#â­–Ÿ¤§;6œ#ñÒ‡î-7­žÝ–Ãùå–‡‡f
+ÕD~ÜñI|_@-÷1ýKí£“C5ʾ6j8?ÅçB4ÝZT‘I\K² \༾Ì— 8'T;6àÊÐŽ×|Á{®x‡Q<ÑIDºcC‡Šè<$º¸H s99ú²³\ŒÆî°vÌ™¸rñTEWí^ &J#¢ÁiÎhãdœOÔC9¥qJ3È
+>g=4èáI)ý=,AiSûAv—tò’V Hº8‘éøé'
+Æ.”{Ÿ¼fgÉ@—Þ Þçè3î%×1tÍ•_É}vˆ•´ÀÐqØÏ2Ø>ÿþöl‹¯BM>Âd(§Öû.~Å)‹øE%Ó¢Ø8ê;­†æxËTaWbrRÇÚœlûÍ ÁŽ´”™¿Øeʪ¿îÈvEiòk¸qŒw°F!mæH´ŽôÚË|aË¢Œùâ~õì[ÉP
+ã†OEЀ¸ßDÚ÷0yl³Ýoe¹“ø ú=¼)
+ÆósVCuè„u˜³3WÕø ²¸p(wxJ4l_Eâ@£’‡[Xž›'4íÔTÄ\8&+‰Ô“
+iŒ×m*‡ùHTÔ%#„2¼|ÐÊ;!óñs{)º¹).Xl¤3™„ZËÅ%ò~F¨†pÇâ¼ú€ÊÏ@Ÿï×Ö¤›U*& ¤úÃ~ò^´$
+E™Nn2îGÑù ÀÌiü¯s°+Å•—¢½Ž½ Ùßq7šžtï|,ðÆXãóØEìÛ¾Ÿd¹âæ[Ëê崴‡èé)6ëF[€ÕB¼]ÛO©¼Sò)WޔϹ”Ðt<G\É|s$™Üëëeß­æÜ°V|ÍÙŸVHÓŒ¹ïø¸B.ßY,€ÿñëâçèo‰+MÚd”ûJFñD¿P¡ƒ‡¾Öš¤ô>|!¹GwÉæy$|¶ Þóè¬&ÃfäÞåtþ²™[÷ÌéL&Þβ„]Õq©Ö­BqM€V^Â=KÄõþgÌW#§‘64Íδ9ÉC€ä^ª÷©Žõø^¤ñ&“&Á?.‘Ê‘ò"Rëäž¹À;f þÇ QJÅÿ|ƒcÚ„˜.Tò¾®†‘gæJ€©1•k.<ëõºYrA!âÇP”É(Ck™h% Ä/M§ÏÔØö,þþ\®ÜH=§¤~fÈe/ˆð”£ñ‹·xóßós˜nF‚K&ðê‚à&‹†"bꇋö!ÚRÄ6ÞÓŸþÂàÄ+â_øÓõDLøý%:HÅ$]é,V}ó%)SQ53㯜_üÚjÓÝrѤ<è:MÉ ‘(¾”¥-m¯zžÎç­~âÍ„ ¯¤¿‰ÅVpD
+™ÓßÒŸò½S£øó9†þÈw"·óxàM‡"žøþ»oå3Q‘¼é·»PÝs¢×@æ× aßÖÁ4ä_øF‡û‡”°n\Š#ÑÒÍLû„¤Œd`gó2/‘]¿­º}øÓ(@“&R‰ïy aÇ éÛý]GžF“¿*òËÌö›qä¦f‰†’’eê´¾V¢âØ0ÿ¯
+endstream endobj 10 0 obj<</Type/Encoding/Differences[46/period]>> endobj 11 0 obj<</Length 214/Filter/FlateDecode>>stream
+hÞTP»nÃ0 ÜõStmt4¼äxèµ›]‘hW@M ´<øï+)N‚ <€GîH¹o-Ù
+endstream endobj 12 0 obj<</Length 117/Filter/FlateDecode/Subtype/Type1C>>stream
+hÞbd`ad`ddò ðò ðÑvL) 0q6q5µ‰ŠþæËùÝ÷«ægëyþ+‚Ýßy…@ÜHꀀ‘Ÿ™‘‘IH‹ïû¢ï³¾ÿmXñ»Ärj.+ˆr@tEñâ¼¼ââ¼¼ÅÅ+V,^¼BŽ À
+endstream endobj 13 0 obj<</Type/FontDescriptor/FontFile3 12 0 R/FontBBox[-31 -250 1000 750]/FontName/MPJMPL+AdvP4C4E59/Flags 6/StemV 0/CapHeight 677/XHeight 431/Ascent 694/Descent -206/ItalicAngle 0/CharSet(/space/period)>> endobj 14 0 obj<</Length 409790/Filter/FlateDecode/Width 2032/Height 1612/BitsPerComponent 8/ColorSpace/DeviceRGB/Type/XObject/Subtype/Image>>stream
+hÞìÛO«+ÇÁ'àûÄlf˜Í+È:AÙ½Œ ÖÖÆzg6Yi“¥ !Ûƒ÷?€£p Z_o´t6ƒ áÞ…!Èp `4' ƒÁp¦¸‹vWÿÓ¿sԭ硸Ü#u—ZUÝ­î_U?>
+]µ×Zóù¼²dÓ…Y¸rÓŒ
+
+¯ŸXójµjºfËó\Ë
+
+áõårYY>ì é(€<Ÿg'Ï+y>
+¾þ<?>:Ñgû¡ýÒ™ÿ§OU”óü8·¿Ot®„Ö‘K'yþXÉó
+ŸnœÃ-pyªa¹´„-íMV «Ç<$V¶Íì•¡i2êYv¶güŽa»ûY9l9ñ@
+ÂýiŸì½eúbEŸ¡²rBrËFœç׎^”ç‡d^rÜ|Wà:í÷ûÅbÇyËo=ežßtb ¿’éfÄójËÏküm=¢M®?ϯm¨òÃåÇž2Ï?´Gjw¼²xUcíäùc%Ï
+Óé´ç¨Gô¢KÜÚ¦é÷é~噫˜šVÆéЇ¹Ây»rŠo…˯Ç3mz>ŒQäç™J=éZå
+ËçÕÚÅXíqÏ 7Ïc¸•ñ‘Cû%^¥ ?¢|ISî‘Ú¹q­J…í(ÆjýÜÐIž?Vò|
+±¡šòü°mµ­[¯ÿàp ZÎÌá´Ótþ¯×;†ÚšV©}\+œÐÒœ¹ˆCý¡ªÚÍK'{?þ2=®=ɇóðÑaþãÕçùY–µü¶\Àôï—BhÛô篶mc<6Œ§Óï q³›†ï~t‘[#Ï+y>
+ßèˆÇÜ*ž1>
+_omiÞÐq±GÚ¯Žè—(´dø òÞRÛ¶¡Úbœ·ügŸ)ÿö•?+8âÉGn™<¬äù
+Ûn·iÜÅ7Mœ ]ûŒyËtýr¬}=y~g÷•g­7U7 ÿC¡a›fà÷œÜž.7£Rye(J·6~ÐAy~¨?Ǫږ4_QžœÅß¾þúó,+Ê—/_>ïÆÈó{
+={-|©+ÜBy>ç"Ï+y>
+Ö¹=#ýétZyt¢³¡ÚÒ‹'è¦,ËäùpãäùC$áävØÛÇJž
+-Óþ]Z"ý"!ï¹íãaKGú4TgÍÅwì|ºäBÝÔ4N$χÛ!Ï" '·ÃÞ>Vò|
+‹UVlJÑw»Ýjµjš^ϲ¬2[»IøˆårÙ”Z/‹Ðý'Ò‡%ÃG78´aMÂê•Vêì¾´ýÓJZ¶*ÔÚ¡ÜÚ¡¹Âw ߥOË„eBýqõÉdj‹›tèf”{*lCØ ÂÎptC›jû@ew
+Úûg隸‹†¯9/9ôa`¸äùC$áävØÛÇJž
+o5­Õ´J(a3ݼs•rVöÞ;ïž½þÐ ×SþúÅåøèª¶í òáûÄoñ—?ýy(›ýððàÔÄ¡äùc%Ï
+=3üJY.¿»ñv;ñ)¡ò,};!
+/îv;
+=þý›ñ¼“ócÙí~°‹œÅf³™L&/1NÃZš
+yþÓ ·í“É7}nðÃbÂFnVÿy°-³[g³7GÙ~ÿ£ÖfôæóoÏžBßÝýÓIé,%ôŽ]àtëõºvþü—¦Óiº˜‰ú
+pŠív[žrŸeYí¤µh·Û…ef³Y\Ë,}
+ÇZŸz:™ õŒxbyg~åû×Ö~~ Å/;Àbž¿^¯XÝü|
+…âÀcWä~b[õ9$ÃèF༹qg¬ÞÝï_3žwr~¡sœåˆ:X,Å}høOžçýW̲¬Xq2™hF
+W%¯^çUBpÀi4¡´ÂóÆŠÛ+úf³ðý¨6»%•i%Æ4$¦pƒ®{KeóHL`’cÔiîw‘ç…tïXgæNuÉùŠåS "7ÃáÐqÃ0p“oY¼_k›,GA„nA Úo†ëº±'Â0d?ö߈ž7E>ÿqÏNU´ØRÆÊÄÓ‰Ù†3šY:Es©ò¢XL¼Ñg§ÜËáγKiÆ|XzÞîKqÏHÖašë´Dg¤Ï èÁ"åÃF ì@ЧÒä|Žt =Ö ‚
+oÓÃá^¨Wƒü²ÒëÂKý ‚ ˆá0‚.ý_‘•-`YSúðÕqœ¬-zÞùü ˜ª¸²|IwREÜ=ÙF¢h¾TÎs隺¥H%aéYª=»dÒ—&õ£ÛûZ4øëûQÁKHË;£¬:9ŸoJ¢Ç:ADKA^ö ‚ ¢‡¸®ÛG<÷Þð wguunÍ4M~›Q%ÿ°, þäû~͵*g/ôÜç+ŠÜÜþVš.‡çé_èfQ—ùЛ$E9¸=ƒV­¿³òÅÝ4$ gåÊ|
+EiK=~XåaÔêpX=Éù iü¥”ÀAQ'ð"¬"7~ãÉßþÜK¯fôg/ÿ!‚ :Cžïa²{á©øžoÛ6ûÆ4M×u‡ïD€KC=Oî¹Ï—¾•3-EóÜ—ºøҥ¤âÖá8;Š.Ô4×KO8o5Ð õgƒC±ølêÏÒ”ï(¸ 5Ï£5;>wà°íQ{›±žä|†t£ô) l‚ ˆrñ}õ1ƒÁ
+®¾ÛÕªž7–ŽÌe‡eÍm{¤®ô¡g)ŒU:èti@¡O¢f“óÒgJëÖ"‚ ˆÚàÆ
+T}#Åv8¼«É}2-A!ÝÀ_ëi|­¶Ð:$ç3¤‘bx¦ÓÈ'‚HÂïûÈ_uðù€wuŸùùËãG#ç·&ˆÒ?™?<w#b߯íQ_Am¡c>? ÃÕÂTZ½¬ä|†ã8YŸí›Ï—ŒrzáÝÞîuÈÏ츈f‡mj¨ €ÔÈB+ü3®­j€¾éàE ¢’?_|]
+ÙJ<KŒ ´hƒC‹€EoyµUO,_YÙÒ¹%¥Kz=Éù i˜žRô ‚ ’À;,ò®Ê_À³2Ó¸p Å+#õùF‡ÌÏŸßšÀ—öî!>s2»¸{̾?{ý€úš ‚h óùšcÛ¶tw@VbCß|¾&úBV¨'²Ðƒ}YþEÌ Œö6c#þéïФÙÚ%î‰í
+Q9jsËÐp›<â
+œã³I¤>ÿòxÊüü…Ñ!üxóè>âó/íÝÛœÌø“=‚ ˆv@>¿‘¦F°,+õã½òùRwQ§ý“æZÖ ïR‚©T™Â µPVV¶Zš‹Ô¼©M%xZ¬þ“oÒ*nA%¶“•zHߤ)뢅ú8Îô;ÜHë<¿tgVý= 'u)øþ!­RY9‚ ˆ.Á-:àºnVZŒ(ŠÇaŸ2M³ÜšdùüÅãœüµ£ÛÓðýÉü!âóÏoMÄ®Ý9¡¾&‚ Zùüz€fxVƒ”T]ß+Ÿ+ôš#£h.u;ôú_O;ÃáûQmUÒMè)¢g*¯´V:oyð¼q#a&•W¬¥Oè8X—ªrØöHÿ Mxì‰ÝEýµ’nºÑ³1ñ0DýÉù üYÓÈ&‚ ý±,Kå¥uñ蟇Ðu]ñíð}¿”j¨øüçnDˆÒO¸<Öú¿”ƒƒƒõõõíííùœžS톺’º’ÐýýýÖueß|~žç9޳òø`0DQTõuyfB*|"'¹±?>Þ£qwT¿<÷ýHê©ô—Tš#Í®¿ëñ*i›¢‡Ã¬6žÝݔٓ†3©Íö¼qEW‡õPejÄZ²¸„ƒ}ËÚ(EãWt¨¹»›Úk€W¬Îmkê©gKRŠ>ADà•9öÒšõNšÜ–oÜeU#‡Ï¿¸{Œøü›G÷oOœßš¬íÌêÜë9>>¦Ùj¨+©+ êÊâôÇçAKà†Q©!‡`øµÇñ}?öOÎâqƒçy<íÁ4ÍX”¡ŸEsÏÛöøFÏ 4ib#ÕÆU¤Îv7FΠ…g‡™:¨¶#WÐMåÄJÓtõL)×VúIãbz®HR^ÃÜ—Åä&¦ÜFÕ°>”•ß"ùÌ.õ š^mCum¬0>¯)EŸ " x…÷YöÒªâóá6™¨V„>s2C|þ¥½{miü›7o2Ý4›ÍÚRgE¢( l[†™çya"Ÿ‚¡5DÁÇ>”QQæg‡»2uA`99G§ÔÐÀöö6ôãÆÆ†JW€„̶m>ÎáG|ï’Ê(Uo‡Ó¤?,Õ•úL®>ø|˜#†aœBKª˜æ0;àÒ0UÅ
+4i8LçÙ]]–{n JÒlózrŒa­Æ[¯ y†»€›]öE×½¥[w‡w¥’5¯¶éîY輡@Ú׎O‚ ˆ¶†!“T¸ŒÍGŸ2ˆøüó[“µíññqÇ pEŽã – e¥kÆR7¡üÔ¡ÈÇ\EÑE÷¼+³XÊ7f,öˆçyÒr`̈©¢—êJXMÓDFi–âS¥¶mgÝ£ÊÇYª‹z´…ÖÍÊ>ø|X½¹Ì‡o\×eòÀ`01…^
+©ÿÉ >?ëƒ}~–™¬MF)È»Úú
+iv±VJ?¦l/ÆRy¶¦¹îº·êläd˜)u”6x’æEëÓN7Tx{ÂðÓª1a"Hg1XÆa…YÊ™Ãx€6g|~L=ªÎÆGL}² ¡&ÒpFSA϶LpÍc‹ …­7ºÅG‚ ú’wÍ^Þ?øÁJ}þÉÉÉ|þË3Î^?@”¾´>bQYÀ pµTQ,õQE6ƒd9*>Ÿ—
+(šR¯
+ÃíêJQñùYw‘Ïç#Y¦Z
+ßdÝ \‘ÛN¸õ`Ž¢ë•,*õd^_b]+
+†Sì|îókn«¯}ík*I¹/¼ð?-k”ž9s&«Vb~òÇ>ö±X­’Mº¿¿+j0$cÌã7˜,**J½¨ÍÍMiQìœsçÎuÛçû¾Ï&r”ábgÖÓZù|n
+Ú•o¿¸„Š„3w>Òýÿü™ŸÖ_«Ôq¥(úšõùÒœØWÿþûü ˜J§UjØ®ÎUô³Ï¼Ù „‡öYYÙ‚Ã4׋—CWTúõ¯íÒ½ÐÚ<q’ãJ1l׬Ïæ™uõ…½AŸ/ã|ô£ÿD>Ÿ ¢aò¤PÅ(æçç;ßA
+a)Ž›››óù£÷—ÉlŽøüW¶"õ¢RáÙ’± p**«¨3gÎdYúXQpEžkSܬ­­!µúÊW¾’šü,ú|äa óÇΡ\ª(•ü|^žŸ=ȃeYHQ| q'5?¿ž¶‚Í
+ßøÆ7ð¢ž}öYƒH¥Ï=÷R+Q0Æj•lÒÔämÅ¡i½ª¨¨ñx¬R”J~þ+¯¼ÒmŸÏÆrßJ*Y;¹J§~Ÿ
+ü…w ágŸy7¿o]þÝß{kY¥Ïùš×vߤkQƒOœØ¸:ÿ7?TYŽšõùxl1ù4ojm_<zyÙÁÛ6ù|‚ ˆÜˆ¯½¥Èí–â >çìõƒ,Ÿï]ݧžªÑsª¸ž<ëtnHðBø D|>^žüœz!ø¥çy,hUMî5è9K­
+¥?auƒ|¾¢ï6ëó¿ðÅ˸êI:ä¦ìJÍ¥º/©ôË­•çkHËÇ,ÏüÉ0®Tì
+ôÝgŸy7<x¾n³ÎGš¢ï8;õ×*6®p}꺷©Ujâ›\b;qê÷ùÒð Î7Þ¼Ys­²ÆÕ²a²")ôŸúô›¯½vu©9ÕûÖ·~ª¾X1Ó[çÚ³[ºÅ€]M|¾tÛì ú|<¶©©(CjJSôùn‚vý÷K¡ úøü £C$EÿöôuVmp?ŸÌ²N%Š¢•÷¯è󹨴m;u,IMiÖ…<ÏãVÎ'«Ï)×çCænÖàˆ'dù|Q®ëò ’ˆã8QÆÿüâ
+(¦ô˪Õ÷‡{ð×4ùIûúÌ3ëçßÊj«o}k7G
+ñK/Ý®´—íùRô«®W0*Ô«W[­²z0Šæxmÿê¯nÕ_+4”T>ýëÿ\s­¤ãêoÿöê|ðtðýBs0¦Š &Ÿ~úzk»tjÃí7þĉ+XT¥›qê¯?ð'TêÓ¼Áµ}¡¢¸Ù›A‘
+¼b§šØÜäöù—ÇSÄç_»sBUŽãàJVEŸoÛ6;MÔ¤‹e|>³¢¿å‰âYP3£\Ÿ¿ÒïSKø³|~ª æ†+}<íŸWÏìùV<|”ÂTâñˆ|íÏ£lb؋Dz΢R:ïóy Jú°`ë<,57{ŸŸoÖø~”CHÖƒÎuË"¦ŠMÌÒ/ˆT=5x@k8ÎÜlÍßçwñ(’J2¹6+IÎýzÀ}ô‚ní‰WضGMU .N “Ñ|Ó-ë0ÍuÏ—µöªokb³‰/#•"Í͆Y¯áÓÀ—£:¥7©†í)]ÞµõA=dYŸíÎÉ¥½{'ó‡·§Ÿ¿¶sDm[ܦ4ÞRŸÏÒ°³ö(šR®nD1Ë ÅŠYÊð{>jážPºÏ}²Ñö§ŠwþKè) ž‚~ä#_^T|>7áC™*£Ôó<¶×
+¨øü ²RvcJïLø§æñ á{1R{66r Ø¬®ä猼¨Þb0PÅý#ÉöϺÜ)±âóŒýÔaŒìh)ÒYY"7î³GÏÅÝB—ëƒÏ瓚Åà|ßç‹9ŒUœ|ÎÖBmÊçãªÇ0®4ÔASü=º
+³Tbå•>œ™ïQ4Ç ‰¢ÃG*
+ÿñòxªS“?âðððµ×^#ŸÏá†D´µ"0a(rkšfêXB€îºnÒØÇ|óYÕHíÊíííÝÝÝÔ¿¶Îçö:¿Tw+ú|èYöhv±»c¿Lõùb¿ÃØpg0,µ^‰Å²®ÜÛÛË:§,ŸŸUN†Pq)ŽÅ8T¢
+²º²tbæ"EuÌçóÑžu u˜°\ìØdó·æz6èó¥B²æŒDÜFjžÎ'RDéC§@³Ã­‡ëÞZYÙR—]¼døl¹7åû‘mª“ùp§Q¤ãnV<"V³õ•Zèúã %6fBUjwKŸ\„âšYÅH†KK—ÓV,MZm¸“þw¡DLºs¤EÑg‚ ˆŠ€÷PÑðH3¢KÑ^Öç¯í1mrîF´t}ò`'œßš°/Œõì$GQCR»‰»Ç‚A©ÏgDQÄM+•:˜Û/â<WV¾Û"™oš/â·S…Ï_$RñiIû©>_<3¦µ“n0&îÔX¾ïóñPÊŠ'¥|ÏH,;ˆï…šºà0· ÉÖKýýåñ”?w
+^¢o>_ôù Y]ÍO‡k—C“:"nŠ  à°¬²Ä8”V*‰¢¹çña£U…+E«ýö&ç+N™zê/­,S­ <µeÍT_á̲zAºšµEÛâq(¸ÍÞV&7øÿ$m ôATAEÉl|àS%æs.ëó7'3nN&³9×õ©œÀM‹wUÓMâA¨‡TšÅ4ÍT£ÅÅc2%8 .Å}>ày^RuÏ † %§Î è£ÜÁ¬ ›æ‹­ù†ñ—xrþ¢2ŸŸ´÷IßåóÓÚ¡„TY-ŽÛÜ>Ÿoëƒ&P¥üб}(Å}/TŒÏÙІôpL…­N°$F‡ì)Ï£‚W!ŸßÍú|ß4q€Ò\¸Ö)_é•~Æ•ÚÔSÍággÙ½15ZóÒÑ$E¿íÉù \çÖ“¢/µ»5ç9÷
+ÆêJ?uÓ²HWi¨O[ZO«”x­6 T7<h«Aý$&ó À—Sx'õ<oø~ƒüÞ¶mÑ9—¨ô—õù'ó‡\×_»sriïâóá„ÛÓüGø^Ûú§Úu„0 S͉ºÏçúE6Å}~¬G œ˜Û—V ­óÏõ?¢è]éTä󹾆á”ü1ÖÅHGÀèò}?æö¹†…bWð3¡»“å%ó5P1¦Cr@.5JS[¯Dß ÍÍsûŧO÷—¬äØó®î³GÌ[›oïòùõÓ¬Ï_h“kœVØÈ$u*}Û5òïºî-| %]\7¼¨Ô¡Õ“‰Úöä|ÅùâûQ¥Æ7Û’WÜ^¢h.‘•µŒH£`p´+àˆG£`•Öa"C›·¨I)EŸ " Ë6MS=ëØ÷}.¾Í­zM}>pîFÄäÉÚÎÑÍ£ûˆÏ‡‚l¹´wº¾
+DÙ¥¢:y&¶˜·¼XÆçÃP¬ÔçÇٲ†}«©Èç/ÞŸŸL×_¨ù|‘ xDYè‹]jDQÄï]Ü„¢>JÅr·¿"lgJêv
+YîÔÓþù5 Qúâ•©8J¡pöŠ­´E|>û ´ 2 àº4ȳ·dÓñýbO?dþfèû˺VšNœY¹©¹‹ñù ™C³¬J[@úú_ƒ‚¨š*”¾i®·ÂÓÁÔóÆÐ–R ]i'žUÞ®p˜t5¨(I®‹‹Ð–ÚÝVãûÞ)±õPe`À9®{KºXµÚØhpwÍ®W t¤)úé#¢WðW×ÜoÊ%¾Ãæðù'ó‡ÜÏßž>¸´wñù×îœLfsþãæ„¸UÁ»’õfR| ®(á›äþnH<ÏK;P‚hQbéôE|>ÿ¬ã81¥?r½\J «íTçóB"tê& Tñ.›Xiðq©Aö©û| â†ÆŠ…mÛ΢±‘–:Èaâðñ–§Èí{ùÊe&[ZOë'¼;`p&ÿÊ.þÄ»Ð'wðtÕ硆zêàóƒ`Ú`~/ž[unsm”«ô]÷ÙE}€¾hÊw)9_eA¨(ÂhÛ£NÚݶÏ&ènÅUfYVð7 gЃ*¿í›ÂOo|ƒ@PŠ>A§í>¸vçäüÖäâî1|óè>âó×vŽàœ³×Øì#DEˆ’w+CüeVnsì489&Þ‹øü˜§…Y} |ß•Þ7*õù<‡<µÁSÅ»èâLÓ„Xßá^]Zlbæ<¿(ä±`Dª_ÊpBÉ™RÄsŠS Ú‡54¯yj ­Ïˆ+Cê(bå/¼}àôÃÇ>ÿÝ"—#Ÿß[Ÿ¿½®V—~&¡•&6×>&÷ú“–ß7¤[Ñ$êRr>_¤Þµ\».Í¿íLT±ÀxF[²Lã«G*ÝRøÓÜuoUwi<¼Ïú–6©4ç¡ÒV%‚Њ0 UW¾ï—˜«œÏçÇ@|þÙëpÂÅÝcöãù­ €Já³IŸ% }¾iš©þ¤ˆÏ_¤yZ˲báƒÞR©Ï‡^àIæÛg‰wX‹#M8_Êç/;^1XR²ò±ká° Rê+â9¡@¾a!õ¢©¶>#­¬Æ‰þÁÞ`ÇÊÊõ"—ëªÏ_)@ õÔÄçK³|+J?ƒ·`üºËBwœee h«–&7ö©….]v/9Ÿ!ì†q¥ÄIÚqAkœ¥‚¡¶=‚©!ͩ•JõꞪ †ªv·wCADx6æ²öFÔA¥¤q–âó/Œ¥?™ÍoOœ½~à]Ýßœh´ëàà`}}}{{{>ïÚ–íÁ``Û¶˜® ýëº.>ÞàS«(žç!% ‡CvZî'0¼á㢨1 nDºêpW¦ÎYF‘“Ù/S–$¹Âð.Nþ ~ã8Ž(«aøÁoTƒX¬zWÂÉ0¤ÅÑWd£ ýðk!àu^ªý³&T[Œ^Á0¹:±*eVòÀ ²=ÇöW>ÿöKEêÜUŸ¯y=5ñù ™Ôª"O^jíªÛÐ ¾‰MmW˜®‡›…F†šŽV'ˆöèY|<—î|ðÄãVg•K#_¶=*åBž7®çBDñù…oæ*å¨Tw×ÞPÅ…ÃpÖHV@=àwG>Ÿ ˆ^!戦ʱTƒ7´eeÍ•âó/§ˆÏ¿vçDÏ^ØØØXÌññ1ÉVC]I]It¯+ù^¶ÔÝ"¿ä pÿ½÷žÏ?|ËûŸEêL>¿-TäóñHøRúà6²í¯ÿD‘¦û~TÖµ¤á°Vïæˆ¢¹TÞoL•«Ð*¤A0•n¦(xtc¾ñ ž¼õ_´Æ 2zÞ˜¦'A½BLdeɇ®ë²ÔP–2mÛ¶˜Ì ß—’œ¿(Éçßž>@|þÚΑž]póæM¦›f3úOµÝPWv†íímèÇ êJêJÑ®gn^¸¶jþfÈ|þïœú_ó%·¼!Wì@Ï_–(š×):ðð%¼m$¦ø¨.1g´:9Ÿ Ž´1 ¦RKwT±/‰(ô¸4j–ûèÌCGš*_Åþ¯F6Ôܪ©÷Ø=AKE‘mÛ§–Ç4Í ˜²)ÅçÞÕý,ŸÒ¶ŽIvêJêJ¢{]麮eY™Éù‹ÅÎËÎ{Éù‹ÿj¾T°ÂäóÛBE>!³[%&õe½‹Çpx—–¢uàIªe)ân'çs¤æZ;wá*ÁÒt-e9Ûu©»ñ¹Ïúr/‡GߪØß×°hÄþu«ŽA´ß÷Å×RÃ0à½53M1eùü £C$Eÿöôõ5AQ.ƒÏÿÊç¿â|³`iäóÛBu>_*¸Êrì•j:‚h(šã±*økÚw>9Ÿ!M3.’i,]…|?¢ñ¬-ƒÁ¾4(¬rÀdÇMñ)©aûà«P¹Á |6uéíæycÛÁßPÈ " CÏóÇWTÃ0bÙøðKx]õ}¿ŠK—åó/§ˆÏ‡¿R/AåbÿÇè=Ÿÿó_ ¾[°4òù2 àF kÄ_Vçóµ$õù~„ Ú½N´Ïã#¼à<êIr>cuu¿Ù|û†pÛ ¬„4’5'™,½¬Æïvf5Þ8%®Ò¸[÷Â%A„”åóoO >ÿÂèšš ‚(Ãøerþïœúá÷ý(
+•Ö1Ÿ·³ú˜VßS÷±»¨ÔçK5WÁsiö2¥ÅÀ4׫ÛêbÛ#<Ö·Æô¼ñ²«´Ìn›ÞÎ
+ XÖFßR‹‰Þ"õƦ¹¾¬7îar>_”ð`E3 hÛ#¼ÏÓèm#A0uœ˜V0T˜Æ§¸ .Û™o‡v+r <d@[]‚ ˆê(îó'³ùÍ£ûðÍíéÄç_RkAêX–•êóÿõ¿ýhE/¾:Ëzâ|åïò<qÈçkH#>!ˆµ¬ezÞ ùŠ%mqÝ[åê÷~&ç3¤f‰ÀïáãÒ\eZ…ˆî! „Á˜Ï½nH7ÎІ;‚ ¢:
+úüÉlî]ÝÿêÛï\Ü=†Ï^?Ȳ+pµ6A¡H©2ÿ /á™rîFô«GYOœÕäyâÏצ|~Lñ—ôe3úà¥^j†Ã»ÔãD—f•Ã_Õ}Wo“ó9R!ŸLöýHªi":Œ4’‡mr”,W„¥ö'‚ ª£ Ï¿<žŠº~mçIÑ¿=}À>5™Íù÷ 2ŸÏÇãñññ1 ƒ¶ÓÛ®Œ¢h8AЙ;
+Ãpmmmk ûnÙuÝ•ÇÀ7ð‘Š* ; VßÃ÷ýê®E³2 tnRæhå?ðgÊ—Ö'NŽ+’Ïצ|þB¦Îgg©Òl{„¿ø/[ A´iV¹úÈ—zé'ç3¤ .äƒ`꺷¤1ÄR¬&AhŽÊΔe£Ò• 8‡Ÿ ‚¨Ž‚>ÿöô¨ë¯Ý9AìÊ¥½{ì#bJƒloo¯?æää¤íýÈåÆp8Ì}²hHÇQ¹®iš5H•^ueŽ~ ü7\HªÌ謓ù²
+©ÐèÊ"³’ ï$_Z{[Åç¿~9ÌqQòùÕ1Ì õ¦|þâQÌz÷‡*^Å$PÑééÿ–µ!-Dê±ûã¢óéúÒó“ ¢EÁTÅÀÃiÒ¢Td>M(‚ ¢Šûü £CæOàøñìõıÀ 7î‹)ý Þûáááöööîînú±tŸø¾—㺮&>¿K]©3Û±äüE5>?U­‹ÄÔkŸ]ÉRôSãìB±‘É2öU‚R X`Âó<î¡Y˜ZäF=Y‚øÙ$±HA²aù„ÂSKˆ)}‡èÁÁÌʽ½½¥Úß¶mÇq`xÃ7I™ÿOþ¶ŠÌ‡ãÆFžÕ€|~uœ*FS>_ªáõÎÁ­¾ëÞ YYÙ¢BtÛåi…ál8¼ëûÌ2JÎçHã#9Ó\§-BD·Qñð–µOE™/-‡ ‚ ŠSÜçÇòí×vŽÇróèþâý)ýÔ¥P…ÏO͉ÉÉ}~ogn2/½
+Ÿ/Í~‡¡R–Ï L–Ã*–z*#‡‡HØ-gèy2æ¥68 CÑTÃËNd±±hNgÖ±Øä|ô?¯"óÿûÚF¾
+Ï¯Ž–ú|xWysG¬¾JN`òЉÞƒ\:‰<o óȶG++[˦ ÷m9ÎN¹>ß÷#¥M8` Êú¸¢Ì‡ÕŒëAD ÷ù±|ûkwNÍriïÞBHé?¿5¡.(…r}>ó†a …A žL>¿NÂ0dmîy^ìOåú|Þ¹xö;Óàüäâ>Ÿ._Í®EQÁ‹ò¨„eYxilG@ªW´Á<ëAʼn\|ÝÖÞé¬ R¥îç^zUÅçÿõ•wòÕ|~u¬‰>WýèQ÷fLHÆ>nYø§VW÷ôê*‚¨jØ+=«¼‡ÉùŒ(šã–ÊÌ'™O<xð w*}(g=—Õe~P¾"AQ¥x!nQ.§“ÙÑ,Là‹Îÿdþz¡8åú|®+}ßÏ*ÄuÝØÉˆT ‚`ø˜˜ü$òÁÍsR;—ëóyçBwgƒ$v2ri¨ðð=ðº1£‹o €Ò˜ÌGª§‘Hƒ±ÉòŠ6˜·pVÖ1Þ>bm‘ÎetÔ<ª Èíýa|àô¯«È|8®Žþ%_Èç·…:}¾J‚}LŽÁ[?û¬ç¥'So=¡DM;\þûŠŠ4ô…ãì´ÎäÍçsšM¥ó½ï}ïàà€¢¬+ŠÓd>AQ'¥øüó[fQÖvŽàdz×Ór2(:ÿÍ íG+r}~EìÇq²
+aÂͲ,nÀ’R%îè8†aÀ™mqŒ‚÷N¹>Nzu1¸€\Ú󼤤…3³F,œ i¸T’í Àe~†©ù½1x|
+ó"<xaÛ¶øûz|>r!ß÷EÕÉ€–WÙéÐì¨f½‰$çøŸQôù{?#Ÿßqêôù/·•#åÕóÆRi0Þ¥Þ$úƒb‚ëRLÏÞ¶gŽ¥ Ûñ˜cë¸zõêÑÑM%¢*azÑÌÃ7*!
+zR°û¾Ï.
+’Ž"$Þ$ÂkˆìIQAÑóËÅZUq"óÐIìBÉðY,z¢ÿ¨fõL­ÿÓÏ“=5V°<bþâÍÉ] òùm¡fŸ_06ëpœêJ¢oXÖF¹ó¨ÏA±0œ©oy€–÷¼qµ;¹|>Q
+*±E˜20_HæAÚRŠÏ¿ytŸ»øqs2CdËÅÝc8¾Š!
+M öŠ_h±ÙG+ŠBçä…úá,^K]]cuu5 å|þ˜AÂ/p°—®ˆo
+6 æ‹k° Ù3+îñx$OFØŽ8”q;“²Ÿcf(óL¹ñÉm¥èˆò”ïX"m†ÏO†•ÏMž»\Uq
+|~ºPýÙgœ81ähooG
+,¤}V³‘‘¡(
+Æw$!ç³Û¼½äØìŽp×s/[)Îç·›DH¡Ïû>?.ðù
+}>ûP¿ß?
+§G(òx<™™™Ôô¿‘¸'Àç
+ÛH¼›xFFFÿ_žð¸Ç$w’c-Á`»í)(U>Ÿ’ž7âaRÊÃIÐ狎@ ò=èÐGß"ÄÈ‹Ñö}
+
++ëµXó?’†Ò:LjV®>?nQ7¯ÁN<™ÐPVUU%2”š¢tjLI ·Û-‡gffêM¸uŸ¯Ÿ´‘Aî86` ßpéÑ[ú]9öxBÒ¬f(5;€²þ<áq ì.o•Ü2¾ó]꼑ãóÙƒ!ò‡ìʷÄA%+ 6úüŽýÑfŒ¿zÆøçŒÿIÎøŸª‘™3þš™ã¯9~ìÌñã¢1nü¬h\§Æõ³ÆÝ0{ܳÇޤƄÙc'RÌ;iÎØÉs®¥Èšsmöœk§ÌÆÔ¹×PL›{ÍtŠyј¡FN42gª1k~4fÏÏœ£ÆÜhü”bÞÍ?‹›Õ¸E 7Å-?¡¸U±ÈÃ…Ñø1‹E±Èb1[£‘¯‹%ѸÚ,
+îqËÀ¸™Ç æˆ%óÆÜ1g`̳ÆÌ‘30f1Ý ò£ñ“hLSÆ”‘=0²„˜¬‹Ic¢úc1‹›DÞM?e±hB,T#W (&RdÞªÆsO>æÐ2ÏɺvF,¦ŒiÙј‹)Ñ›‹,Š)ј‹I±˜¨ÆŠ©ã(nŠÅ±¸AëYLw],ÆGc¼ã(¦‹kcqM,2cñS5~‹ÇâêéÑBñ#5®šq ö+{ëêœh†añ!Õ°l™ÑœÃÒε±ä3VHAãfõg!<]KJ7Ì{c,nÏQ,MMRÓOVY±”•=·?k©‰ëÛÜÕŸ¾bLŸÇ4©Œe³Ù&9MŸÖÌ2Û­²ÌfœÓX*Ò—Qš²š…ÔD4Ø\do:Òd¤¸IÉÆ¼d˜$©IŸÌ”>G¦©Üþ4õm¦¢pÇâ–XÜL1©?æÇb^\37s(&÷ÇìXÌŠÅÌXäPdQ\+É]†é‹g0yÓç1ÃT¦Ïf† í:]BëÏi&iM’Ùâæ·«&fÂç
+OÔ,ûðü²Î/ûøü²Sç—~úùÒÓŸ/­ú¢àìÕµKÎÕ.©©]r¾vÉuKjëòëBùõ¡ü†úÅê7Ö/þ²>¯©>ïŸõyÍ ÑøWC^Ë?Q|ýEÊŠ…mþ[Ž ¹r/5F£«1·[Ë_F£çËÜ+ÑXÐÛÔa5¾Q£/·j"b_Þi¼5ráÖ>Š,èkXÐW¯FhA_Ý‚¾Z5¾XÐ÷ù‚¾ó¹}5¹}Ïí;§Fuî7Ÿå~sVªÜoNÇâÓÜo‚¹ßœÊ ’þ87üQ,N.  Æ‰…½ï/ì}Owö_ØûŽÇõ¾½¨·R·õþmQo…]Ôû—E½o.ºòfÞ•?ç]y#ïÊëj¼–w¥<ïÊ«Ñèy9¯çh,y=/åõ”åõ¼˜×óBÞåçcñÜâËGÔøãâˇ_>¤Æ³‹/?³øòÓj<•ÙŸ¹4ÝOæwÿ!¿û 5~Ÿßý»üîÇ—Dã±%]Æâ·KºYÒõ𒮇–t=¸¤Ë·ä‹K.=Ðüû‚öýÊþ‚ÖK[,ý—oéW¾e;eÿô-kò-k|pÙ…—ýã¡Âú‡
+CÖ>\øÅÃË?xùù‡—·|ph™}ríK¥kËJ×¾PºîùÒuò¯;â_ÿGÿúCO­ö© Ï<½áé§7øŸÞPúô†?<½á‰g6üþ™?»ñ±g7<´é·‡6=rhÓÇ6?xx³ïðæ‡7?ðÇÍ¿ùãæ_ÙüË#[~qdËÏl¹ï¹­ûžÛzÏŸŠJþTt×óE{Ÿ/ºãù¢ÛŸ/ºí…m{^ضëÅm;_ܶýEoq™×[æ-*+ÞZV¼ù¥âM/o|©xC xÝÑâµG·¯>º}ÕÑí+îXñòŽå/ï(|eçÒWv¼²sÉ«;¿º3ïÕ‹^Ý™[¾kAù.÷k»nym÷ͯïžÿúï™óúžY¯ï™ùÆžœ7öLÿóžiÞ3åÍÛXPb™þæžœ¿DÓˬ¿F3̼Šh’¹¹b—»b¥š‹f›¼·¢‘_¹cI厥•;–Un_þööoo_ùvñªcÅ«¯}‡RPñ5 m>¾mËñmEïnÛönQñ{Ñt´ã½¢ïíyoëž÷·ÞþþÖ;NlÙ{bË]'6³ìt/%¨6ßÿá&ÊQ¿8MS¿þhãmØÿÑJV¾7<Lùêã ¿ýdý£Ÿ¬ìÔ:ÊZ¿%®ÒàZpíÓŸ®}öÓ5”¾Ç2ØógV±$öRÕª@4•­¤TV~våkg=¯FÙlÅ›Õ+„„¶âmžÓþ^ø~MájZ;©f¶Sç—?g™­@ŸÙ>W3[ˆe¶Ëlߦµ¯(­©9­õ‹(›µ«ÙŒ¥².5ƒQîb)«O’…bYÈZ"êã‰È,iÒÑÉÜð‡æé¨?#©éh°éµþŒMJ¯y‰'%5/]æyéO&y闞ΗšòYjú6;ýv`ve§ýÆ JÙ¿ôk£%¤©eõj¦ª‹fªå_¨iŠâï¬8§Æg¿]qö·+ª]qZࣞSz>yÔóÑAŠ•>¶òƒÇVžxlÕ{GãÝÇW½£ÆÛ¿[Uù»UoýnuÅï£ñ—'V¿ùÄš??±æu5^ûÃÚWÕxùɵ”¸OFWYéºþÜUÍ]ÑôõÔ€ôõ”š¾¢ì™o3X4‰Úô¨Ä:ÔŸÄöÿ±?ýú¥²þ<ö³#[îWSÙ½ÑT¶•RÙݱlv§šÐn{¾ˆ²Ùn]BÛf”ÓÖGÓÚv1­y^îÏl˄̖¯f6Š…±ävëkÑüvókÑä6/–ßf«ùbÒC«àó
+}?¥/’èN’}>qø|›DÔ\ìêÅ  {}~DÐõ†g…¿™Ï§uÇT°!n·[#]éWf†322,jÞÑ ÷·Ô‡úwm÷ù¢®7<‰(üÍ>šŸD ·™NäX¹"Þf3­mxùŒ!,%®"5{^ úüÁ®Ûß!ôïR;™É§nIá½ÏJq>ï1c~0vþç’ÛļÞYû"ç|¶·sú|6“iÖi&îC$îRZoá¿ðùðùðùðùðùðùðùðùðùðù
+½ÐȱºL¢ôQ œ|ŸO<Û*Ñ5m=ádö@8T22ZÇŒþAí ›¸J±‚×:Ÿ(í5‹KTý†>_s* |¯ý 3Evé)=»z}§[$Snøµ“Z+¿^Âmø®($­#÷ùi¯o —Òú³Në—cvZ³c×°Ö—’¡Øä]G7)Ã=:@|jLô¨ƒZ5†—/®VºÁÉ÷’ƒ•â|ºSkÿwÜ„ïÿðjúµ¦­G²F
+´çו}üNÜ•2’æóùÿO¸0l·kpõ÷6ú-<öÿ.Ã'Dìmø|ø|ø|ø|ø|ø|ø|ø|ø|ø|
+4‹hEðµC¯” »hbÔ¶0iÈØô¦ ‡>>>>ß:ðùðùðùðùðùðù
+{E¢k|§[Ø1¬ŒÿàÙÖîpŸC û&J/™¯è C^Ùkñ`ÏèÔ}ÄHòú|EQØßŠÅÌt~:fP–ÒÒÎçK&|\6(Efv°ÞçëÕ}ÄHòžMLÚ\ì{<C·oh5%;¼…ܱ'¸Ekq)‰î]ì1£š™XºC62‘U3¨ `;¢·w»ÝúVIŠó©7®ÊžÍ'ÿÉæ.ÉÒ¸û•O~xJܶ—¤ùüá¿d6Ùø:Òï71ó¯y¨Ä–†Ï‡Ï‡Ï‡Ï‡Ï‡Ï‡Ï‡Ï‡Ï‡Ï
+‡Ã---_]}ùüK‹õëÂ^ŸÏ— ׉úW }~D•“ôŠXÉ,ZJzËÆGcØPvvû=¶1”.!>%U>Ÿ [_Lé_‰˜ÒÓyÌÔ.½.ÎøجÊ}B›ïˆBÞúyøÓ †O¦èu¨†¼jRèó©I|\Ì ú}Ãâ|·Û]xà^r/_­÷=úWþsCÇÛ¯eú|q&‹;núQfÓÒÆø|ø|ø|ø|ø|ø|ø|ø|ø|ø|
+ý+‘6¬ðòðù6+†sÈÔÕÕUUU}öþûJA’‘1ÌM~›ËÕenòùúj|}ž™Ïçús½§¥SÙ¥ôÙPÝÝ݆oºtðlë07ù¾Ó-4óåO£¤ÊçGtÕø†ûò¦#}>¥eQÿjž“š4iÒÐ|>oϲÜã'ç¡õ¥Ä¯7AŸ?äU“BŸ/Ú`~Õ\ÿÊ‹óéÈüÂåâÖ­|î|ºV󗽤ÐçƒAútÉl… ËífÛFl¶Ó»6îÃÂçÃçÃçÃçÃçÃçÃçÃçÃçÃç
+|½ÞXðù"@ÀãñpÑ缇ñC)'…>_#ð5zŸaý£™Ûç{¯<¥¿ôÒK¥*o¼ñFe ®²+upÿÉíº¸Ù$WkŽ·¾” {Ï.Ÿ?ØU“*ŸÏ»]Ó|¶È‹ó#÷vÅ'¹ôQt¤~ÿ‰²ŸËë;]_ÉÿA+Ó†­'˜EE±wvÁçÃçÃçÃçÃçÃçÃçÃçÃçÃç
+÷má?w‡ûœ¸¨4ªÏ‡Ï‡Ï‡Ï‡Ï‡Ï‡Ï‡Ï‡Ï‡Ï‡Ï‡Ï
+7ü†AÇ·õ„Å_1ÿÍpÔ狳hª‘#&>_\bÉñQ£®RÍ$˜s>?"d`C±lx6c7,Ø–çGãóÙÇq (ÁìÙ¾
+âbø@">È«†?7¡Ùksîíé_qìâ¶_Óíü¡­«²{ŠŽ(’ÛÁËÇÿÅ÷é¾àÐu%Ùçk6ȬcoŸ?,ÛÝØÚ7ÜFtö°
+q Í$¥t¹Ì Òç3|>Ÿ¦žãv»%Ë$®Ï§)Mg ‡a³ôùC[5lyÎç…BÔb'ˆ7V³®ÓtÚÅ®ÞÃÁOŸ=üè÷~ðä^PrìËP¨>Þt©¡ãŠs•dŸ¸Afe ‰æ§oðúÚbàë°hÚ'ó>Uàóø|@Àç
+ù|>úv™­âõzÍjÛDŸŸ™™©y´|4“rŸOøN·HdNw¸Ï¡Ïmmm­®®®«« ‡Ã˜ iÍèJæGX‰> eUUV¥xq~ò‹ºEè–*—ù.—‹MÑ`0èñxèNÝ?c[ƒÊÿ¡h—ÜÆÎ¿ì]ûa2×Ô¨òùÌÒûý~ñE}ðÉ–ü Dø|
+ø|
+µ;µ¾‹³3Dû]ŒÅ‹³¦æglÃYúw2’þå†1ÿÉ}¹ÝÊ#Wþù#Yqð)^ `JŸOô
+`*W ÉR>pHà+ù€°¡Éï5<.éùoÚ®ûOÌíôWì»»èó™½b«ÏÏíó7^G"ëc:¨¹­šÝ©CMçfDß®à’ÖG eú|ñã‚< Þ?O=Ž-‚ Hí·K
+ùƒ‘ß[r÷L^g¹ËÈBî`¹ðx…üÎÈo…Ünä7–¬c¹h&ÿmä×íc¹Í’µBn5²FÈ-3yMÌÍFVçFJËæ ðù
+\8™¦XJÉχχχÏGàóáóáóáóáó
+}>këózǤô­‡º|èJ)°g:áp¸±8âã†9
+ Óô‹ƒ•ù­ÓW
+tÍààqžó…|>|>|>|>ŸŸŸŸŸ
+]×mÊü`0hs|^Uã¾Ñ…kR’N~ÏîvêØùK*ùÝ=âói7f-›¯êKø|ø|ø|ø|>>>>>
+üÁñcôNKRb{F&¦xI?Óû
+Z4ùVñnEÓ4^>7™Oã/_@Q”ÛØ§Änÿ_>ßzŸ¯ûÚ-IIÇ~Öò ŸvÉ+³Â›fµ3™ÂYè)&EUUv}åHe¾é8ÃçÃçÃçÃç#ðùðùðùðùðù
+¹ûåŒÏ·þÔG%½:å¤S¦ƒßz'—Ñ=r0+¼iö`%zð£¦g»§–nÎåÇ>>>>χχχχÏ
+Ù“Ïî|¢–<—Ï®™¼ý¬,çžÈ3ù<ÏŽ|¶Ÿû–)Oia9o&OyBȶãy“gk>çɧù|s3ò¨-ùl¶ä‘|6²IH“‘…ò‘¿žÈyÀ’û…¨F6äsŸ%¹àDÖ¹WÈ=Fþ|<í<ÊçBþ`ä÷–Ü=“×Yî2r§;X.<žF!¿3ò[!·ù%ëX.šÉùõEûXn³d­[¬rËL^s³‘Õù„‘Ò²yE|>
+gBUƒ¦DS›Äb±‚Ä‹
+…¬+áÛ’eXSþô§O>ÿ͵­ I—~ú¢Iÿɺþx nëósùý‚Ó 8X¢/ñùš¦ÑgŽÐKëã$}>‚ ¨÷ÏS¿c‹ R{Áý
+sÉú©‡g¥þöQE²QîuíÎÈèÓÖ5î+:ÙŠþäóåÂ竹^ÕõqÑ竪*¶;R*VŠ@gd›µ1Сp¼>
+ îâl»ù{ì
+=‰ð‹7Õr‹‹Å¸ÕwêžÚƒ>ŸhêN0ÉÓ6”_L:;³TõÛ¡¯¯™CW;hÊš¡§§§š’n½©kUËÖŒñxÜô0wÎPo§¢;Ò’4¾”lxq~‹ïÝ®íøü×^ý˜—ñ·÷BÃÁçϺ¤G.àó
+•¤[­»1—:ÀCÑ\‹O]ù}.óóy±qßh±›þt$®y®=ãói7è2€ÏÚô»ªªº&‹ø9À£äG<ó|>
+SL¡³RIºy—|–‹£h4ZþžxÙ狌LLI|~s¯ÎcÚŸ^¦³Ó8Í
+…ʶt]W…Fœ2 ³ãÛ~a•ù>ßæ›¶ë’îúœ ¿òfkºëóÅs‰ÚE|ÈB;&Îì¨:ýî8ðù
+9
+…œêí
+H°%áó
+ ‹ím,ãû¦ºK­CŸßy$ÍEóóͽºD±2~ú)¾
+.ÆnK¹¡_\™Ì(WètÃ.Ù½:ôùéì4AGÒôÎþÃYÔzp<g©ê
+•×ð‚Ïç{B'^ƒ¢(ô;SëŽÃÊ!诚Äã`¢ØÅU…Ï
+…L ótƒ,‡ß)KÊ5YÉœµj.W—>ŸhéO2´ëÀ½Lf²³ú"kU?
+Ÿ¾ACCqäJÝ´iÎHAŸÏÞ¬ðƒ†bÀç
+{ú î³dIú
+¦oçÈ>T—Ï'Çq™Oì?<!ñH¬´©;Á^¶Å¿
+>
+u¶öý*uÈ´|Í|wU}‹ú`p«®OF6·Kd>åÇ×i’~ø–û&«å»»èóãñx¬œšcÈÎsÓåGÁ#À®¿T /N6lÒŠ}mŸ
+«ÂªÜZÕž={N9åîfý~¿ÉCŠ«ÒuÕÛVF­«¢-.X°@RÀìñÃNË‹ïëúd`Á½r™ nU”îk·$%Ýïêu_Ü«±±±9ìÕ|¯jïÞ½®û|:QEaC³„‚W5s@Ó4¶BU°â¦#@ÿŸ}³’¢¼÷ýþ­JÝηêƪS™:§NYÇœh+˜_`xµ£øÆ‹´ ¢Øˆb≎c£¶r_0Û®q±MÜ@<‡ã\B¼$\“,îÞŰÍ!ìÉ:=›v˜0÷7ýì>ôÎKOÏìÌÎtÏ÷S¿¢všž~yúy~Ïô§ÍާlýžÿmVö ’ðù|>@ àó
+úü '|ù¢_ F|yÆå—L¿ü²é—_>íò¯M›ø©¯š2aÒ” áð„©á˦O¾lÆäË®™té¬I—^7éÒ믾töÕâ W‹7^%Þt•(]%~ó*ñæ«.¹ùÊKn‰9vÜÊãŠKn·ÇÅUˆÌöoµ€ Û7íã¼ÉŽ탟}uæDèt®µÏ‹Înæ¤Ké4§Ä´ðetîS™F˜l·ÆÕS&P³\9eÂS3MDñõ©©¹¾:m"µÅÄé—O°›±h\ê9Doq‰·¸Ø[|Å[üëôË7¼ùZ•ÒšÿÇTV\^øW/1Ý-¾Rz\ì9¼ôÉ¢}»èqh
+ÇDgL;——™±Ÿ_ã1u8¾žßÈWŒŽ+1…"“²âêÑ1itLæÎDxtL9”è2éÎÓx8²bnÌpÄÌáÈäÒk1Ë×:â:v6æ1{8D6Ѱ¸‘ÇH&¿id’F¦!7çLI·äLOÎjôÄtq=Ÿ+³çPgÜz…c¶uœàœ-iœ‘¶â ˜™GæG{Š¯Ï™%3¥}­³fIê]|Šdó#u{63ÒøºøÊKàó
+FÌØñè7ùÈ‚_¬^¦¯ZýŽòøÛ+ŸÞ|¿Úºâ•Ÿ,×Z–ýT[º­ùÞ÷__òÁ¦{>|uñîWýöå»?Þx÷7È^ZØùï ®¿ëÐú»¿¸àÈ‹ó½0ÿ¸:ÿ„:¿WÿWu^ßóó>{~žõÅÜøssûŸ›û·g‡c w&ì8Y¹ ÍÒ¾h¿t
+ÿé5Æ7àóáóáóáóáóáóáóáóáóáó
+EÑ»Ì/´©,™_Ô”Ö˜C7ùÖ¦óoº4£÷GcY§Ä~²hq~4z„òmÏÀéôþˆKÖõcϯö#!UUiûÔó³–S÷¦³·×h˜Ð þ"
+ø|ø|ø|ø|ø|ø|ø|ø|ø|ø|
+=EûજËáóáóáóáóáóáóáóáóáóáóáó
+ç¯ãZ^[X™=Ãøð/2ŸóSÚ,Éçûë5¨qðù–eE Ô»(Šš¦E])ãYRÙ¿:œT¤’>>>>>>>>>>
+ùñ÷ùt;Ïv]Þý8ÿzE”ß}>±ñ@Œ¹£¶ÃiGÅ~ÞØÛ;Hëp+µÁøK{{ûÐБ¯éîîn·Á¥ ê¥Ôu)zú×} <§y!
+Õä­ñ!S/¬ÅÃèÍZîEæÓw™Ì—åì#ê1þÐþ‰¿Få8øüzCQ”
+>ð|>|>|>|>|>|>|>|>|>|>
+’)+R>ÿ©að(ó)týÓtæu°^AXÏ–\9÷—^4þ÷ÚºYþøÈ_—ÒÀçðùðùðùðùðùðùðùðùðùðù
+픿í<£ûäcÛ=Ê|Mkg_žpËc×µ}ztÃÞøœµn öÍöoÕÐçSߦž©SÓ¦iR …B¾~µ>>>>>>>>>>
+»½ý4g퀇óú¥†>Ÿí”Àã
+Ql±¬Syv·K6ù*_LSÄÊÍ–KFýâ…gê¼!‹RCŸOЯ¶kµ€;â2?À¿[˜ÏϽ(Yï#Àçƒj
+ 3øøüF
+ù|˲ØrºCÌýV(
+’Ç.àù|giÏÀiZân¢ööÒ:ÄØ#€¡ÔY (
+ŸïàóAµû.::ƒ/€Ïo0¥
+€šF¹‡/
+åv˲r7Â(ðÕdYR©êÇe¾,ïȪÀ7Œ^AXï\¡Ð^(%:ß`rÅ)ëÙ¨ß{ |¾/€ÏÕîWP¸è è ¾
+
+
+48ÌáK’ä¬uW«sK«ëº3…ŽÊ‹ÌWÅm}HK·6eâ÷nì]ækZ»ûwåI·[›ÎKïÉÿæÂPê,øm‡ö6äEæSPõ{·‡Ï•òÁ@átߟß`J
+•G
+C–Ì÷Mbé­Â°ÏßY0 —-ó-ë”(¶8Wxò–™î»s
+üƒgx.uÊŸðù R@>ø(\€Îà;àóL©
+ð ©Tª¯¯/‘H )ʆ¿²äRošf÷¨ëº³ø¿(´2}%廬 ó)i.'™/ë£Ñ#Î/Fo(ôÚ¹Î_§¯úò¹ÝÍߘÍKƒOüÊúÁ³g=çS‚ À¨„Ï•òÁ@átߟß`J
+—´ù@ó¹Ò}J°•ðù R8åÃ¥_¹xîíw ê?èJñ«¶lÉ½èÆŒÓçO¾ò*ŒŽº1ú|4 /‚Æ |>
+MÕ}}ίl;Ô¾á#ººº˜9D‰¾˲¢Ñ¨Ç§–”C¡Kªª’çc„òpÑò¾àrN뙟´ÒÛEf×§/Î_×Ôô£P赬µÆ"ó IÒÙ
+ÒDÙÚtް̧ý&ݺKƒ+7[MMé%›â.i³eÛ ¶2ý›»ŽŽßJø|P)œ>áÇ€2jp²D1ÂQ†ÏG 9
+…ü(ó­Mç‰_ZÅÍüè““ÌOgžžÄŸ¼ãVuÁÕÃ&Ÿbì.óÓö£ÏžÓŸûüÙ/\ðw—„IñÉÎnZŸVλX,F£òøñãþ>ðù "ÀçC_ŸŸ@r
+E£Ñ
+úè MK75¥¯œ;è’0<ß_ÓnUàóA¥€Ï‡2¾>>ä
+飺÷c¤Ù ©)½r³å’0'Üpªv=«ZÀçƒJñÛ={^TÕ‰5«vÊ–`œÔ;[·¢72Ô‚=l'_y•S㤎=ZôÊÒ:HÈHÎ
+ÆÓç¯ãrž›ùJÊür‘åŒÏŸýpÂ%UÎY;@ëO
+2
+šššÒ³vK’ô¿´Ž¢ðÒÀçPÐG
+½æ”ù¼ž_U?®à±ÉrÆç¯is{‰é‹ž¡uêþqS9ÀçPÐG
+XÊ0ZÂßvIkÚbMMiQ ìX†Ï T 
+…øwé0ÖoßøáKeÈ|VÞÏBÖ;‹öÇΙhtóóoº¤ÇÙ'ššÒ^nýÇmTVø|
+5ôLÇ}¾ eT,³Æ»â}SYUÓ¹¨žpjšÍãïþši¨çö˜ôñ»?Þ⢭Ú°íœ<Óz0N#…1 ÃãQÑšQW¼ËO^s>öM9*ï zqݯ ÇÎàQÂ{iy§ s1Ï>uò%Aç¨ë:°MÕ„¶O°Œ#¤ šõ‚€êë{ÌùNÌ'Ý^1™¿§ü‡¼8Ÿ‚½¸ä\’‘]}Ñ>ãw?¼1Ÿ@@à;àóƒ
+2
+…ø“øüE€e>š¦it²üu¤êA]Žv4–Æt>h ­•÷P .HZéíbÆ·ïýÞSÌИ^’Ì·‡Ã‘ŠË|¢¹ÓbÉmãXÖ’¼ñÝ–£NáO¦‚7^àó(è#
diff --git a/neozip/test/example.c b/neozip/test/example.c
new file mode 100644
index 0000000000..fd62bd5d7f
--- /dev/null
+++ b/neozip/test/example.c
@@ -0,0 +1,1002 @@
+/* example.c -- usage example of the zlib compression library
+ * Copyright (C) 1995-2006, 2011, 2016 Jean-loup Gailly
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+#include "deflate.h"
+
+#include <stdio.h>
+#include <stdarg.h>
+#include <inttypes.h>
+
+#include "test_shared_ng.h"
+
+#define TESTFILE "foo.gz"
+
+static const char dictionary[] = "hello";
+static unsigned long dictId = 0; /* Adler32 value of the dictionary */
+
+/* Maximum dictionary size, according to inflateGetDictionary() description. */
+#define MAX_DICTIONARY_SIZE 32768
+
+static alloc_func zalloc = NULL;
+static free_func zfree = NULL;
+
+/* ===========================================================================
+ * Display error message and exit
+ */
+void error(const char *format, ...) {
+ va_list va;
+
+ va_start(va, format);
+ vfprintf(stderr, format, va);
+ va_end(va);
+
+ exit(1);
+}
+
+#define CHECK_ERR(err, msg) { \
+ if (err != Z_OK) \
+ error("%s error: %d\n", msg, err); \
+}
+
+/* ===========================================================================
+ * Test compress() and uncompress()
+ */
+static void test_compress(unsigned char *compr, z_uintmax_t comprLen, unsigned char *uncompr, z_uintmax_t uncomprLen) {
+ int err;
+ unsigned int len = (unsigned int)strlen(hello)+1;
+
+ err = PREFIX(compress)(compr, &comprLen, (const unsigned char*)hello, len);
+ CHECK_ERR(err, "compress");
+
+ strcpy((char*)uncompr, "garbage");
+
+ err = PREFIX(uncompress)(uncompr, &uncomprLen, compr, comprLen);
+ CHECK_ERR(err, "uncompress");
+
+ if (strcmp((char*)uncompr, hello))
+ error("bad uncompress\n");
+ else
+ printf("uncompress(): %s\n", (char *)uncompr);
+}
+
+/* ===========================================================================
+ * Test read/write of .gz files
+ */
+static void test_gzio(const char *fname, unsigned char *uncompr, z_size_t uncomprLen) {
+#ifdef NO_GZCOMPRESS
+ fprintf(stderr, "NO_GZCOMPRESS -- gz* functions cannot compress\n");
+#else
+ z_int32_t err;
+ size_t read;
+ size_t len = strlen(hello)+1;
+ gzFile file;
+ z_off64_t pos;
+ z_off64_t comprLen;
+
+ /* Write gz file with test data */
+ file = PREFIX(gzopen)(fname, "wb");
+ if (file == NULL)
+ error("gzopen error\n");
+ /* Write hello, hello! using gzputs and gzprintf */
+ PREFIX(gzputc)(file, 'h');
+ if (PREFIX(gzputs)(file, "ello") != 4)
+ error("gzputs err: %s\n", PREFIX(gzerror)(file, &err));
+ if (PREFIX(gzprintf)(file, ", %s!", "hello") != 8)
+ error("gzprintf err: %s\n", PREFIX(gzerror)(file, &err));
+ /* Write string null-teriminator using gzseek */
+ if (PREFIX(gzseek)(file, 1L, SEEK_CUR) < 0)
+ error("gzseek error, gztell=%ld\n", (long)PREFIX(gztell)(file));
+ /* Write hello, hello! using gzfwrite using best compression level */
+ if (PREFIX(gzsetparams)(file, Z_BEST_COMPRESSION, Z_DEFAULT_STRATEGY) != Z_OK)
+ error("gzsetparams err: %s\n", PREFIX(gzerror)(file, &err));
+ if (PREFIX(gzfwrite)(hello, len, 1, file) == 0)
+ error("gzfwrite err: %s\n", PREFIX(gzerror)(file, &err));
+ /* Flush compressed bytes to file */
+ if (PREFIX(gzflush)(file, Z_SYNC_FLUSH) != Z_OK)
+ error("gzflush err: %s\n", PREFIX(gzerror)(file, &err));
+ comprLen = PREFIX(gzoffset)(file);
+ if (comprLen <= 0)
+ error("gzoffset err: %s\n", PREFIX(gzerror)(file, &err));
+ PREFIX(gzclose)(file);
+
+ /* Open gz file we previously wrote */
+ file = PREFIX(gzopen)(fname, "rb");
+ if (file == NULL)
+ error("gzopen error\n");
+
+ /* Read uncompressed data - hello, hello! string twice */
+ strcpy((char*)uncompr, "garbages");
+ if (PREFIX(gzread)(file, uncompr, (unsigned)uncomprLen) != (int)(len + len))
+ error("gzread err: %s\n", PREFIX(gzerror)(file, &err));
+ if (strcmp((char*)uncompr, hello))
+ error("bad gzread: %s\n", (char*)uncompr);
+ else
+ printf("gzread(): %s\n", (char*)uncompr);
+ /* Check position at the end of the gz file */
+ if (PREFIX(gzeof)(file) != 1)
+ error("gzeof err: not reporting end of stream\n");
+
+ /* Seek backwards mid-string and check char reading with gzgetc and gzungetc */
+ pos = PREFIX(gzseek)(file, -22L, SEEK_CUR);
+ if (pos != 6 || PREFIX(gztell)(file) != pos)
+ error("gzseek error, pos=%ld, gztell=%ld\n", (long)pos, (long)PREFIX(gztell)(file));
+ if (PREFIX(gzgetc)(file) != ' ')
+ error("gzgetc error\n");
+ if (PREFIX(gzungetc)(' ', file) != ' ')
+ error("gzungetc error\n");
+ /* Read first hello, hello! string with gzgets */
+ strcpy((char*)uncompr, "garbages");
+ PREFIX(gzgets)(file, (char*)uncompr, (int)uncomprLen);
+ if (strlen((char*)uncompr) != 7) /* " hello!" */
+ error("gzgets err after gzseek: %s\n", PREFIX(gzerror)(file, &err));
+ if (strcmp((char*)uncompr, hello + 6))
+ error("bad gzgets after gzseek\n");
+ else
+ printf("gzgets() after gzseek: %s\n", (char*)uncompr);
+ /* Seek to second hello, hello! string */
+ pos = PREFIX(gzseek)(file, 14L, SEEK_SET);
+ if (pos != 14 || PREFIX(gztell)(file) != pos)
+ error("gzseek error, pos=%ld, gztell=%ld\n", (long)pos, (long)PREFIX(gztell)(file));
+ /* Check position not at end of file */
+ if (PREFIX(gzeof)(file) != 0)
+ error("gzeof err: reporting end of stream\n");
+ /* Read first hello, hello! string with gzfread */
+ strcpy((char*)uncompr, "garbages");
+ read = PREFIX(gzfread)(uncompr, uncomprLen, 1, file);
+ if (strcmp((const char *)uncompr, hello) != 0)
+ error("bad gzgets\n");
+ else
+ printf("gzgets(): %s\n", (char*)uncompr);
+ pos = PREFIX(gzoffset)(file);
+ if (pos < 0 || pos != (comprLen + 10))
+ error("gzoffset err: wrong offset at end\n");
+ /* Trigger an error and clear it with gzclearerr */
+ PREFIX(gzfread)(uncompr, (size_t)-1, (size_t)-1, file);
+ PREFIX(gzerror)(file, &err);
+ if (err == 0)
+ error("gzerror err: no error returned\n");
+ PREFIX(gzclearerr)(file);
+ PREFIX(gzerror)(file, &err);
+ if (err != 0)
+ error("gzclearerr err: not zero %d\n", err);
+
+ PREFIX(gzclose)(file);
+
+ if (PREFIX(gzclose)(NULL) != Z_STREAM_ERROR)
+ error("gzclose unexpected return when handle null\n");
+ Z_UNUSED(read);
+#endif
+}
+
+/* ===========================================================================
+ * Test deflate() with small buffers
+ */
+static void test_deflate(unsigned char *compr, size_t comprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+ size_t len = strlen(hello)+1;
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (void *)0;
+ c_stream.total_in = 0;
+ c_stream.total_out = 0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != len && c_stream.total_out < comprLen) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate");
+ }
+ /* Finish the stream, still forcing small buffers: */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "deflate");
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+}
+
+/* ===========================================================================
+ * Test inflate() with small buffers
+ */
+static void test_inflate(unsigned char *compr, size_t comprLen, unsigned char *uncompr, size_t uncomprLen) {
+ int err;
+ PREFIX3(stream) d_stream; /* decompression stream */
+
+ strcpy((char*)uncompr, "garbage");
+
+ d_stream.zalloc = zalloc;
+ d_stream.zfree = zfree;
+ d_stream.opaque = (void *)0;
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = 0;
+ d_stream.next_out = uncompr;
+ d_stream.total_in = 0;
+ d_stream.total_out = 0;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ CHECK_ERR(err, "inflateInit");
+
+ while (d_stream.total_out < uncomprLen && d_stream.total_in < comprLen) {
+ d_stream.avail_in = d_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "inflate");
+ }
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ CHECK_ERR(err, "inflateEnd");
+
+ if (strcmp((char*)uncompr, hello))
+ error("bad inflate\n");
+ else
+ printf("inflate(): %s\n", (char *)uncompr);
+}
+
+static unsigned int diff;
+
+/* ===========================================================================
+ * Test deflate() with large buffers and dynamic change of compression level
+ */
+static void test_large_deflate(unsigned char *compr, size_t comprLen, unsigned char *uncompr, size_t uncomprLen, int zng_params) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+#ifndef ZLIB_COMPAT
+ int level = -1;
+ int strategy = -1;
+ zng_deflate_param_value params[2];
+
+ params[0].param = Z_DEFLATE_LEVEL;
+ params[0].buf = &level;
+ params[0].size = sizeof(level);
+
+ params[1].param = Z_DEFLATE_STRATEGY;
+ params[1].buf = &strategy;
+ params[1].size = sizeof(strategy);
+#endif
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (void *)0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_BEST_SPEED);
+ CHECK_ERR(err, "deflateInit");
+
+ c_stream.next_out = compr;
+ c_stream.avail_out = (unsigned int)comprLen;
+
+ /* At this point, uncompr is still mostly zeroes, so it should compress
+ * very well:
+ */
+ c_stream.next_in = uncompr;
+ c_stream.avail_in = (unsigned int)uncomprLen;
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate");
+ if (c_stream.avail_in != 0)
+ error("deflate not greedy\n");
+
+ /* Feed in already compressed data and switch to no compression: */
+ if (zng_params) {
+#ifndef ZLIB_COMPAT
+ zng_deflateGetParams(&c_stream, params, sizeof(params) / sizeof(params[0]));
+ if (level != Z_BEST_SPEED)
+ error("Expected compression level Z_BEST_SPEED, got %d\n", level);
+ if (strategy != Z_DEFAULT_STRATEGY)
+ error("Expected compression strategy Z_DEFAULT_STRATEGY, got %d\n", strategy);
+ level = Z_NO_COMPRESSION;
+ strategy = Z_DEFAULT_STRATEGY;
+ zng_deflateSetParams(&c_stream, params, sizeof(params) / sizeof(params[0]));
+#else
+ error("test_large_deflate() called with zng_params=1 in compat mode\n");
+#endif
+ } else {
+ PREFIX(deflateParams)(&c_stream, Z_NO_COMPRESSION, Z_DEFAULT_STRATEGY);
+ }
+ c_stream.next_in = compr;
+ diff = (unsigned int)(c_stream.next_out - compr);
+ c_stream.avail_in = diff;
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate");
+
+ /* Switch back to compressing mode: */
+ if (zng_params) {
+#ifndef ZLIB_COMPAT
+ level = -1;
+ strategy = -1;
+ zng_deflateGetParams(&c_stream, params, sizeof(params) / sizeof(params[0]));
+ if (level != Z_NO_COMPRESSION)
+ error("Expected compression level Z_NO_COMPRESSION, got %d\n", level);
+ if (strategy != Z_DEFAULT_STRATEGY)
+ error("Expected compression strategy Z_DEFAULT_STRATEGY, got %d\n", strategy);
+ level = Z_BEST_COMPRESSION;
+ strategy = Z_FILTERED;
+ zng_deflateSetParams(&c_stream, params, sizeof(params) / sizeof(params[0]));
+#else
+ error("test_large_deflate() called with zng_params=1 in compat mode\n");
+#endif
+ } else {
+ PREFIX(deflateParams)(&c_stream, Z_BEST_COMPRESSION, Z_FILTERED);
+ }
+ c_stream.next_in = uncompr;
+ c_stream.avail_in = (unsigned int)uncomprLen;
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate");
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err != Z_STREAM_END)
+ error("deflate should report Z_STREAM_END\n");
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+}
+
+/* ===========================================================================
+ * Test inflate() with large buffers
+ */
+static void test_large_inflate(unsigned char *compr, size_t comprLen, unsigned char *uncompr, size_t uncomprLen) {
+ int err;
+ PREFIX3(stream) d_stream; /* decompression stream */
+
+ strcpy((char*)uncompr, "garbage");
+
+ d_stream.zalloc = zalloc;
+ d_stream.zfree = zfree;
+ d_stream.opaque = (void *)0;
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = (unsigned int)comprLen;
+ d_stream.total_in = 0;
+ d_stream.total_out = 0;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ CHECK_ERR(err, "inflateInit");
+
+ for (;;) {
+ d_stream.next_out = uncompr; /* discard the output */
+ d_stream.avail_out = (unsigned int)uncomprLen;
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "large inflate");
+ }
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ CHECK_ERR(err, "inflateEnd");
+
+ if (d_stream.total_out != 2*uncomprLen + diff)
+ error("bad large inflate: %" PRIu64 "\n", (uint64_t)d_stream.total_out);
+ else
+ printf("large_inflate(): OK\n");
+}
+
+/* ===========================================================================
+ * Test deflate() with full flush
+ */
+static void test_flush(unsigned char *compr, z_uintmax_t *comprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+ unsigned int len = (unsigned int)strlen(hello)+1;
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (void *)0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.next_out = compr;
+ c_stream.avail_in = 3;
+ c_stream.avail_out = (unsigned int)*comprLen;
+ err = PREFIX(deflate)(&c_stream, Z_FULL_FLUSH);
+ CHECK_ERR(err, "deflate");
+
+ compr[3]++; /* force an error in first compressed block */
+ c_stream.avail_in = len - 3;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err != Z_STREAM_END) {
+ CHECK_ERR(err, "deflate");
+ }
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+
+ *comprLen = (z_size_t)c_stream.total_out;
+}
+
+#ifndef TEST_STOCK_ZLIB
+/* ===========================================================================
+ * Test inflateSync()
+ * We expect a certain compressed block layout, so skip this with the original zlib.
+ */
+static void test_sync(unsigned char *compr, size_t comprLen, unsigned char *uncompr, size_t uncomprLen) {
+ int err;
+ PREFIX3(stream) d_stream; /* decompression stream */
+
+ strcpy((char*)uncompr, "garbage");
+
+ d_stream.zalloc = zalloc;
+ d_stream.zfree = zfree;
+ d_stream.opaque = (void *)0;
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = 2; /* just read the zlib header */
+
+ err = PREFIX(inflateInit)(&d_stream);
+ CHECK_ERR(err, "inflateInit");
+
+ d_stream.next_out = uncompr;
+ d_stream.avail_out = (unsigned int)uncomprLen;
+
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "inflate");
+
+ d_stream.avail_in = (unsigned int)comprLen-2; /* read all compressed data */
+ err = PREFIX(inflateSync)(&d_stream); /* but skip the damaged part */
+ CHECK_ERR(err, "inflateSync");
+
+ err = PREFIX(inflate)(&d_stream, Z_FINISH);
+ if (err != Z_STREAM_END)
+ error("inflate should report Z_STREAM_END\n");
+ err = PREFIX(inflateEnd)(&d_stream);
+ CHECK_ERR(err, "inflateEnd");
+
+ printf("after inflateSync(): hel%s\n", (char *)uncompr);
+}
+#endif
+
+/* ===========================================================================
+ * Test deflate() with preset dictionary
+ */
+static void test_dict_deflate(unsigned char *compr, size_t comprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (void *)0;
+ c_stream.adler = 0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_BEST_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ err = PREFIX(deflateSetDictionary)(&c_stream,
+ (const unsigned char*)dictionary, (int)sizeof(dictionary));
+ CHECK_ERR(err, "deflateSetDictionary");
+
+ dictId = c_stream.adler;
+ c_stream.next_out = compr;
+ c_stream.avail_out = (unsigned int)comprLen;
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.avail_in = (unsigned int)strlen(hello)+1;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err != Z_STREAM_END)
+ error("deflate should report Z_STREAM_END\n");
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+}
+
+/* ===========================================================================
+ * Test inflate() with a preset dictionary
+ */
+static void test_dict_inflate(unsigned char *compr, size_t comprLen, unsigned char *uncompr, size_t uncomprLen) {
+ int err;
+ uint8_t check_dictionary[MAX_DICTIONARY_SIZE];
+ uint32_t check_dictionary_len = 0;
+ PREFIX3(stream) d_stream; /* decompression stream */
+
+ strcpy((char*)uncompr, "garbage garbage garbage");
+
+ d_stream.zalloc = zalloc;
+ d_stream.zfree = zfree;
+ d_stream.opaque = (void *)0;
+ d_stream.adler = 0;
+ d_stream.next_in = compr;
+ d_stream.avail_in = (unsigned int)comprLen;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ CHECK_ERR(err, "inflateInit");
+
+ d_stream.next_out = uncompr;
+ d_stream.avail_out = (unsigned int)uncomprLen;
+
+ for (;;) {
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ if (err == Z_STREAM_END) break;
+ if (err == Z_NEED_DICT) {
+ if (d_stream.adler != dictId)
+ error("unexpected dictionary");
+ err = PREFIX(inflateSetDictionary)(&d_stream, (const unsigned char*)dictionary,
+ (int)sizeof(dictionary));
+ }
+ CHECK_ERR(err, "inflate with dict");
+ }
+
+ err = PREFIX(inflateGetDictionary)(&d_stream, NULL, &check_dictionary_len);
+ CHECK_ERR(err, "inflateGetDictionary");
+#ifndef S390_DFLTCC_INFLATE
+ if (check_dictionary_len < sizeof(dictionary))
+ error("bad dictionary length\n");
+#endif
+
+ err = PREFIX(inflateGetDictionary)(&d_stream, check_dictionary, &check_dictionary_len);
+ CHECK_ERR(err, "inflateGetDictionary");
+#ifndef S390_DFLTCC_INFLATE
+ if (memcmp(dictionary, check_dictionary, sizeof(dictionary)) != 0)
+ error("bad dictionary\n");
+#endif
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ CHECK_ERR(err, "inflateEnd");
+
+ if (strncmp((char*)uncompr, hello, sizeof(hello)))
+ error("bad inflate with dict\n");
+ else
+ printf("inflate with dictionary: %s\n", (char *)uncompr);
+}
+
+/* ===========================================================================
+ * Test deflateBound() with small buffers
+ */
+static void test_deflate_bound(void) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+ unsigned int len = (unsigned int)strlen(hello)+1;
+ int estimateLen = 0;
+ unsigned char *outBuf = NULL;
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (voidpf)0;
+ c_stream.avail_in = len;
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.avail_out = 0;
+ c_stream.next_out = outBuf;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ /* calculate actual output length and update structure */
+ estimateLen = PREFIX(deflateBound)(&c_stream, len);
+ outBuf = malloc(estimateLen);
+
+ if (outBuf != NULL) {
+ /* update zlib configuration */
+ c_stream.avail_out = estimateLen;
+ c_stream.next_out = outBuf;
+
+ /* do the compression */
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) {
+ printf("deflateBound(): OK\n");
+ } else {
+ CHECK_ERR(err, "deflate");
+ }
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+
+ free(outBuf);
+}
+
+/* ===========================================================================
+ * Test deflateCopy() with small buffers
+ */
+static void test_deflate_copy(unsigned char *compr, size_t comprLen) {
+ PREFIX3(stream) c_stream, c_stream_copy; /* compression stream */
+ int err;
+ size_t len = strlen(hello)+1;
+
+ memset(&c_stream, 0, sizeof(c_stream));
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (voidpf)0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != len && c_stream.total_out < comprLen) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate");
+ }
+
+ /* Finish the stream, still forcing small buffers: */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "deflate");
+ }
+
+ err = PREFIX(deflateCopy)(&c_stream_copy, &c_stream);
+ CHECK_ERR(err, "deflate_copy");
+
+ if (c_stream.state->status == c_stream_copy.state->status) {
+ printf("deflate_copy(): OK\n");
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd original");
+
+ err = PREFIX(deflateEnd)(&c_stream_copy);
+ CHECK_ERR(err, "deflateEnd copy");
+}
+
+/* ===========================================================================
+ * Test deflateGetDictionary() with small buffers
+ */
+static void test_deflate_get_dict(unsigned char *compr, size_t comprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+ unsigned char *dictNew = NULL;
+ z_uint32_t *dictLen;
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (voidpf)0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_BEST_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ c_stream.next_out = compr;
+ c_stream.avail_out = (uInt)comprLen;
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.avail_in = (unsigned int)strlen(hello)+1;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+
+ if (err != Z_STREAM_END)
+ error("deflate should report Z_STREAM_END\n");
+
+ dictNew = calloc(256, 1);
+ dictLen = (z_uint32_t *)calloc(4, 1);
+ err = PREFIX(deflateGetDictionary)(&c_stream, dictNew, dictLen);
+
+ CHECK_ERR(err, "deflateGetDictionary");
+ if (err == Z_OK) {
+ printf("deflateGetDictionary(): %s\n", dictNew);
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+
+ free(dictNew);
+ free(dictLen);
+}
+
+/* ===========================================================================
+ * Test deflatePending() with small buffers
+ */
+static void test_deflate_pending(unsigned char *compr, size_t comprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+ z_int32_t *bits = calloc(256, 1);
+ z_uint32_t *ped = calloc(256, 1);
+ size_t len = strlen(hello)+1;
+
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (voidpf)0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != len && c_stream.total_out < comprLen) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate");
+ }
+
+ err = PREFIX(deflatePending)(&c_stream, ped, bits);
+ CHECK_ERR(err, "deflatePending");
+
+ if (*bits >= 0 && *bits <= 7) {
+ printf("deflatePending(): OK\n");
+ } else {
+ printf("deflatePending(): error\n");
+ }
+
+ /* Finish the stream, still forcing small buffers: */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "deflate");
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+
+ free(bits);
+ free(ped);
+}
+
+/* ===========================================================================
+ * Test deflatePrime() wrapping gzip around deflate stream
+ */
+static void test_deflate_prime(unsigned char *compr, size_t comprLen, unsigned char *uncompr, size_t uncomprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ PREFIX3(stream) d_stream; /* decompression stream */
+ int err;
+ size_t len = strlen(hello)+1;
+ uint32_t crc = 0;
+
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (voidpf)0;
+
+ /* Raw deflate windowBits is -15 */
+ err = PREFIX(deflateInit2)(&c_stream, Z_DEFAULT_COMPRESSION, Z_DEFLATED, -MAX_WBITS, 8, Z_DEFAULT_STRATEGY);
+ CHECK_ERR(err, "deflateInit2");
+
+ /* Gzip magic number */
+ err = PREFIX(deflatePrime)(&c_stream, 16, 0x8b1f);
+ CHECK_ERR(err, "deflatePrime");
+ /* Gzip compression method (deflate) */
+ err = PREFIX(deflatePrime)(&c_stream, 8, 0x08);
+ CHECK_ERR(err, "deflatePrime");
+ /* Gzip flags (one byte, using two odd bit calls) */
+ err = PREFIX(deflatePrime)(&c_stream, 3, 0x0);
+ CHECK_ERR(err, "deflatePrime");
+ err = PREFIX(deflatePrime)(&c_stream, 5, 0x0);
+ CHECK_ERR(err, "deflatePrime");
+ /* Gzip modified time */
+ err = deflate_prime_32(&c_stream, 0);
+ CHECK_ERR(err, "deflatePrime");
+ /* Gzip extra flags */
+ err = PREFIX(deflatePrime)(&c_stream, 8, 0x0);
+ CHECK_ERR(err, "deflatePrime");
+ /* Gzip operating system */
+ err = PREFIX(deflatePrime)(&c_stream, 8, 255);
+ CHECK_ERR(err, "deflatePrime");
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.avail_in = (uint32_t)len;
+ c_stream.next_out = compr;
+ c_stream.avail_out = (uint32_t)comprLen;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err != Z_STREAM_END)
+ CHECK_ERR(err, "deflate");
+
+ /* Gzip uncompressed data crc32 */
+ crc = PREFIX(crc32)(0, (const uint8_t *)hello, (uint32_t)len);
+ err = deflate_prime_32(&c_stream, crc);
+ CHECK_ERR(err, "deflatePrime");
+ /* Gzip uncompressed data length */
+ err = deflate_prime_32(&c_stream, (uint32_t)len);
+ CHECK_ERR(err, "deflatePrime");
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+
+ d_stream.zalloc = zalloc;
+ d_stream.zfree = zfree;
+ d_stream.opaque = (void *)0;
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = (uint32_t)c_stream.total_out;
+ d_stream.next_out = uncompr;
+ d_stream.avail_out = (uint32_t)uncomprLen;
+ d_stream.total_in = 0;
+ d_stream.total_out = 0;
+
+ /* Inflate with gzip header */
+ err = PREFIX(inflateInit2)(&d_stream, MAX_WBITS + 32);
+ CHECK_ERR(err, "inflateInit");
+
+ err = PREFIX(inflate)(&d_stream, Z_FINISH);
+ if (err != Z_BUF_ERROR) {
+ CHECK_ERR(err, "inflate");
+ }
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ CHECK_ERR(err, "inflateEnd");
+
+ if (strcmp((const char *)uncompr, hello) != 0)
+ error("bad deflatePrime\n");
+ if (err == Z_OK)
+ printf("deflatePrime(): OK\n");
+}
+
+/* ===========================================================================
+ * Test deflateSetHeader() with small buffers
+ */
+static void test_deflate_set_header(unsigned char *compr, size_t comprLen) {
+ PREFIX(gz_header) *head = calloc(1, sizeof(PREFIX(gz_header)));
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+ size_t len = strlen(hello)+1;
+
+
+ if (head == NULL)
+ error("out of memory\n");
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (voidpf)0;
+
+ /* gzip */
+ err = PREFIX(deflateInit2)(&c_stream, Z_DEFAULT_COMPRESSION, Z_DEFLATED, MAX_WBITS + 16, 8, Z_DEFAULT_STRATEGY);
+ CHECK_ERR(err, "deflateInit2");
+
+ head->text = 1;
+ head->comment = (uint8_t *)"comment";
+ head->name = (uint8_t *)"name";
+ head->hcrc = 1;
+ head->extra = (uint8_t *)"extra";
+ head->extra_len = (uint32_t)strlen((const char *)head->extra);
+
+ err = PREFIX(deflateSetHeader)(&c_stream, head);
+ CHECK_ERR(err, "deflateSetHeader");
+ if (err == Z_OK) {
+ printf("deflateSetHeader(): OK\n");
+ }
+ PREFIX(deflateBound)(&c_stream, (unsigned long)comprLen);
+
+ c_stream.next_in = (unsigned char *)hello;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != len && c_stream.total_out < comprLen) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate");
+ }
+
+ /* Finish the stream, still forcing small buffers: */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "deflate");
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+
+ free(head);
+}
+
+/* ===========================================================================
+ * Test deflateTune() with small buffers
+ */
+static void test_deflate_tune(unsigned char *compr, size_t comprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+ int good_length = 3;
+ int max_lazy = 5;
+ int nice_length = 18;
+ int max_chain = 6;
+ size_t len = strlen(hello)+1;
+
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (voidpf)0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_BEST_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ err = PREFIX(deflateTune)(&c_stream,(uInt)good_length,(uInt)max_lazy,nice_length,(uInt)max_chain);
+ CHECK_ERR(err, "deflateTune");
+ if (err == Z_OK) {
+ printf("deflateTune(): OK\n");
+ }
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != len && c_stream.total_out < comprLen) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate");
+ }
+
+ /* Finish the stream, still forcing small buffers: */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "deflate");
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+}
+
+/* ===========================================================================
+ * Usage: example [output.gz [input.gz]]
+ */
+int main(int argc, char *argv[]) {
+ unsigned char *compr, *uncompr;
+ z_uintmax_t comprLen = 10000*sizeof(int); /* don't overflow on MSDOS */
+ z_uintmax_t uncomprLen = comprLen;
+ static const char* myVersion = PREFIX2(VERSION);
+
+ if (zVersion()[0] != myVersion[0]) {
+ fprintf(stderr, "incompatible zlib version\n");
+ exit(1);
+
+ } else if (strcmp(zVersion(), PREFIX2(VERSION)) != 0) {
+ fprintf(stderr, "warning: different zlib version linked: %s\n", zVersion());
+ }
+
+ printf("zlib-ng version %s = 0x%08lx, compile flags = 0x%lx\n",
+ ZLIBNG_VERSION, ZLIBNG_VERNUM, PREFIX(zlibCompileFlags)());
+
+ compr = (unsigned char*)calloc((unsigned int)comprLen, 1);
+ uncompr = (unsigned char*)calloc((unsigned int)uncomprLen, 1);
+ /* compr and uncompr are cleared to avoid reading uninitialized
+ * data and to ensure that uncompr compresses well.
+ */
+ if (compr == NULL || uncompr == NULL)
+ error("out of memory\n");
+
+ test_compress(compr, comprLen, uncompr, uncomprLen);
+
+ test_gzio((argc > 1 ? argv[1] : TESTFILE),
+ uncompr, uncomprLen);
+
+ test_deflate(compr, comprLen);
+ test_inflate(compr, comprLen, uncompr, uncomprLen);
+
+ test_large_deflate(compr, comprLen, uncompr, uncomprLen, 0);
+ test_large_inflate(compr, comprLen, uncompr, uncomprLen);
+
+#ifndef ZLIB_COMPAT
+ test_large_deflate(compr, comprLen, uncompr, uncomprLen, 1);
+ test_large_inflate(compr, comprLen, uncompr, uncomprLen);
+#endif
+
+ test_flush(compr, &comprLen);
+#ifndef TEST_STOCK_ZLIB
+ test_sync(compr, comprLen, uncompr, uncomprLen);
+#endif
+ comprLen = uncomprLen;
+
+ test_dict_deflate(compr, comprLen);
+ test_dict_inflate(compr, comprLen, uncompr, uncomprLen);
+
+ test_deflate_bound();
+ test_deflate_copy(compr, comprLen);
+ test_deflate_get_dict(compr, comprLen);
+ test_deflate_set_header(compr, comprLen);
+ test_deflate_tune(compr, comprLen);
+ test_deflate_pending(compr, comprLen);
+ test_deflate_prime(compr, comprLen, uncompr, uncomprLen);
+
+ free(compr);
+ free(uncompr);
+
+ return 0;
+}
diff --git a/neozip/test/fuzz/CMakeLists.txt b/neozip/test/fuzz/CMakeLists.txt
new file mode 100644
index 0000000000..a02f57d21b
--- /dev/null
+++ b/neozip/test/fuzz/CMakeLists.txt
@@ -0,0 +1,45 @@
+cmake_minimum_required(VERSION 3.14...4.2.1)
+
+if(CMAKE_C_COMPILER_ID MATCHES "Clang")
+ if(DEFINED ENV{LIB_FUZZING_ENGINE})
+ set(FUZZING_ENGINE $ENV{LIB_FUZZING_ENGINE})
+ set(FUZZING_ENGINE_FOUND ON)
+ else()
+ find_library(FUZZING_ENGINE "FuzzingEngine")
+ endif()
+endif()
+
+set(FUZZERS
+ fuzzer_checksum
+ fuzzer_compress
+ fuzzer_example_small
+ fuzzer_example_large
+ fuzzer_example_flush
+ fuzzer_example_dict
+ )
+
+if(WITH_GZFILEOP)
+ list(APPEND FUZZERS fuzzer_minigzip)
+endif()
+
+foreach(FUZZER ${FUZZERS})
+ add_executable(${FUZZER} ${FUZZER}.c)
+
+ if(NOT FUZZING_ENGINE_FOUND)
+ target_sources(${FUZZER} PRIVATE standalone_fuzz_target_runner.c)
+ endif()
+
+ if(NOT DEFINED BUILD_SHARED_LIBS)
+ target_link_libraries(${FUZZER} zlib-ng-static)
+ else()
+ target_link_libraries(${FUZZER} zlib-ng)
+ endif()
+
+ if(FUZZING_ENGINE_FOUND)
+ target_link_libraries(${FUZZER} ${FUZZING_ENGINE})
+ endif()
+
+ file(GLOB FUZZER_TEST_FILES ${PROJECT_SOURCE_DIR}/*)
+ set(FUZZER_COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:${FUZZER}> ${FUZZER_TEST_FILES})
+ add_test(NAME ${FUZZER} COMMAND ${FUZZER_COMMAND})
+endforeach()
diff --git a/neozip/test/fuzz/fuzzer_checksum.c b/neozip/test/fuzz/fuzzer_checksum.c
new file mode 100644
index 0000000000..cedd284dbe
--- /dev/null
+++ b/neozip/test/fuzz/fuzzer_checksum.c
@@ -0,0 +1,81 @@
+#include <stdio.h>
+#include <assert.h>
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+int LLVMFuzzerTestOneInput(const uint8_t *data, size_t dataLen) {
+ uint32_t crc0 = PREFIX(crc32)(0L, NULL, 0);
+ uint32_t crc1 = crc0;
+ uint32_t crc2 = crc0;
+ uint32_t adler0 = PREFIX(adler32)(0L, NULL, 0);
+ uint32_t adler1 = adler0;
+ uint32_t adler2 = adler0;
+ uint32_t combine1, combine2;
+ /* Checksum with a buffer of size equal to the first byte in the input. */
+ uint32_t buffSize = data[0];
+ uint32_t offset = 0;
+ uint32_t op;
+
+ /* Discard inputs larger than 1Mb. */
+ static size_t kMaxSize = 1024 * 1024;
+ if (dataLen < 1 || dataLen > kMaxSize)
+ return 0;
+
+ /* Make sure the buffer has at least a byte. */
+ if (buffSize == 0)
+ ++buffSize;
+
+ /* CRC32 */
+ op = PREFIX(crc32_combine_gen)(buffSize);
+ for (offset = 0; offset + buffSize <= dataLen; offset += buffSize) {
+ uint32_t crc3 = PREFIX(crc32_z)(crc0, data + offset, buffSize);
+ uint32_t crc4 = PREFIX(crc32_combine_op)(crc1, crc3, op);
+ crc1 = PREFIX(crc32_z)(crc1, data + offset, buffSize);
+ assert(crc1 == crc4);
+ Z_UNUSED(crc1);
+ Z_UNUSED(crc4);
+ }
+ crc1 = PREFIX(crc32_z)(crc1, data + offset, dataLen % buffSize);
+
+ crc2 = PREFIX(crc32_z)(crc2, data, dataLen);
+
+ assert(crc1 == crc2);
+ Z_UNUSED(crc1);
+ Z_UNUSED(crc2);
+ combine1 = PREFIX(crc32_combine)(crc1, crc2, (z_off_t)dataLen);
+ combine2 = PREFIX(crc32_combine)(crc1, crc1, (z_off_t)dataLen);
+ assert(combine1 == combine2);
+
+ /* Fast CRC32 combine. */
+ op = PREFIX(crc32_combine_gen)((z_off_t)dataLen);
+ combine1 = PREFIX(crc32_combine_op)(crc1, crc2, op);
+ combine2 = PREFIX(crc32_combine_op)(crc2, crc1, op);
+ assert(combine1 == combine2);
+ combine1 = PREFIX(crc32_combine)(crc1, crc2, (z_off_t)dataLen);
+ combine2 = PREFIX(crc32_combine_op)(crc2, crc1, op);
+ assert(combine1 == combine2);
+
+ /* Adler32 */
+ for (offset = 0; offset + buffSize <= dataLen; offset += buffSize)
+ adler1 = PREFIX(adler32_z)(adler1, data + offset, buffSize);
+ adler1 = PREFIX(adler32_z)(adler1, data + offset, dataLen % buffSize);
+
+ adler2 = PREFIX(adler32_z)(adler2, data, dataLen);
+
+ assert(adler1 == adler2);
+ Z_UNUSED(adler1);
+ Z_UNUSED(adler2);
+ combine1 = PREFIX(adler32_combine)(adler1, adler2, (z_off_t)dataLen);
+ combine2 = PREFIX(adler32_combine)(adler1, adler1, (z_off_t)dataLen);
+ assert(combine1 == combine2);
+ Z_UNUSED(combine1);
+ Z_UNUSED(combine2);
+
+ /* This function must return 0. */
+ return 0;
+}
diff --git a/neozip/test/fuzz/fuzzer_compress.c b/neozip/test/fuzz/fuzzer_compress.c
new file mode 100644
index 0000000000..2eca038234
--- /dev/null
+++ b/neozip/test/fuzz/fuzzer_compress.c
@@ -0,0 +1,82 @@
+#include <stdio.h>
+#include <assert.h>
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+static const uint8_t *data;
+static size_t dataLen;
+
+static void check_compress_level(uint8_t *compr, z_uintmax_t comprLen,
+ uint8_t *uncompr, z_uintmax_t uncomprLen,
+ int level) {
+ PREFIX(compress2)(compr, &comprLen, data, dataLen, level);
+ PREFIX(uncompress)(uncompr, &uncomprLen, compr, comprLen);
+
+ /* Make sure compress + uncompress gives back the input data. */
+ assert(dataLen == uncomprLen);
+ assert(0 == memcmp(data, uncompr, dataLen));
+}
+
+#define put_byte(s, i, c) {s[i] = (unsigned char)(c);}
+
+static void write_zlib_header(uint8_t *s) {
+ unsigned level_flags = 0; /* compression level (0..3) */
+ unsigned w_bits = 8; /* window size log2(w_size) (8..16) */
+ unsigned int header = (Z_DEFLATED + ((w_bits-8)<<4)) << 8;
+ header |= (level_flags << 6);
+
+ header += 31 - (header % 31);
+
+ /* s is guaranteed to be longer than 2 bytes. */
+ put_byte(s, 0, (header >> 8));
+ put_byte(s, 1, (header & 0xff));
+}
+
+static void check_decompress(uint8_t *compr, z_uintmax_t comprLen) {
+ /* We need to write a valid zlib header of size two bytes. Copy the input data
+ in a larger buffer. Do not modify the input data to avoid libFuzzer error:
+ fuzz target overwrites its const input. */
+ size_t copyLen = dataLen + 2;
+ uint8_t *copy = (uint8_t *)malloc(copyLen);
+ memcpy(copy + 2, data, dataLen);
+ write_zlib_header(copy);
+
+ PREFIX(uncompress)(compr, &comprLen, copy, (z_uintmax_t)copyLen);
+ free(copy);
+}
+
+int LLVMFuzzerTestOneInput(const uint8_t *d, size_t size) {
+ /* compressBound does not provide enough space for low compression levels. */
+ z_size_t comprLen = 100 + 2 * PREFIX(compressBound)(size);
+ z_size_t uncomprLen = (z_size_t)size;
+ uint8_t *compr, *uncompr;
+
+ /* Discard inputs larger than 1Mb. */
+ static size_t kMaxSize = 1024 * 1024;
+
+ if (size < 1 || size > kMaxSize)
+ return 0;
+
+ data = d;
+ dataLen = size;
+ compr = (uint8_t *)calloc(1, comprLen);
+ uncompr = (uint8_t *)calloc(1, uncomprLen);
+
+ check_compress_level(compr, comprLen, uncompr, uncomprLen, 1);
+ check_compress_level(compr, comprLen, uncompr, uncomprLen, 3);
+ check_compress_level(compr, comprLen, uncompr, uncomprLen, 6);
+ check_compress_level(compr, comprLen, uncompr, uncomprLen, 7);
+
+ check_decompress(compr, comprLen);
+
+ free(compr);
+ free(uncompr);
+
+ /* This function must return 0. */
+ return 0;
+}
diff --git a/neozip/test/fuzz/fuzzer_example_dict.c b/neozip/test/fuzz/fuzzer_example_dict.c
new file mode 100644
index 0000000000..053a3e101a
--- /dev/null
+++ b/neozip/test/fuzz/fuzzer_example_dict.c
@@ -0,0 +1,164 @@
+#include <stdio.h>
+#include <assert.h>
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#define CHECK_ERR(err, msg) { \
+ if (err != Z_OK) { \
+ fprintf(stderr, "%s error: %d\n", msg, err); \
+ exit(1); \
+ } \
+}
+
+static const uint8_t *data;
+static size_t dataLen;
+static alloc_func zalloc = NULL;
+static free_func zfree = NULL;
+static unsigned int dictionaryLen = 0;
+static unsigned long dictId; /* Adler32 value of the dictionary */
+
+/* ===========================================================================
+ * Test deflate() with preset dictionary
+ */
+void test_dict_deflate(unsigned char **compr, size_t *comprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+ int level = data[0] % 11 - 1; /* [-1..9]
+ compression levels
+ #define Z_NO_COMPRESSION 0
+ #define Z_BEST_SPEED 1
+ #define Z_BEST_COMPRESSION 9
+ #define Z_DEFAULT_COMPRESSION (-1) */
+
+ int method = Z_DEFLATED; /* The deflate compression method (the only one
+ supported in this version) */
+ int windowBits = 8 + data[(dataLen > 1) ? 1:0] % 8; /* The windowBits parameter is the base
+ two logarithm of the window size (the size of the history buffer). It
+ should be in the range 8..15 for this version of the library. */
+ int memLevel = 1 + data[(dataLen > 2) ? 2:0] % 9; /* memLevel=1 uses minimum memory but is
+ slow and reduces compression ratio; memLevel=9 uses maximum memory for
+ optimal speed. */
+ int strategy = data[(dataLen > 3) ? 3:0] % 5; /* [0..4]
+ #define Z_FILTERED 1
+ #define Z_HUFFMAN_ONLY 2
+ #define Z_RLE 3
+ #define Z_FIXED 4
+ #define Z_DEFAULT_STRATEGY 0 */
+
+ /* deflate would fail for no-compression or for speed levels. */
+ if (level == 0 || level == 1)
+ level = -1;
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (void *)0;
+
+ err = PREFIX(deflateInit2)(&c_stream, level, method, windowBits, memLevel,
+ strategy);
+ CHECK_ERR(err, "deflateInit");
+
+ err = PREFIX(deflateSetDictionary)(
+ &c_stream, (const unsigned char *)data, dictionaryLen);
+ CHECK_ERR(err, "deflateSetDictionary");
+
+ /* deflateBound does not provide enough space for low compression levels. */
+ *comprLen = 100 + 2 * PREFIX(deflateBound)(&c_stream, (unsigned long)dataLen);
+ *compr = (uint8_t *)calloc(1, *comprLen);
+
+ dictId = c_stream.adler;
+ c_stream.next_out = *compr;
+ c_stream.avail_out = (unsigned int)(*comprLen);
+
+ c_stream.next_in = (z_const unsigned char *)data;
+ c_stream.avail_in = (uint32_t)dataLen;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err != Z_STREAM_END) {
+ fprintf(stderr, "deflate dict should report Z_STREAM_END\n");
+ exit(1);
+ }
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+}
+
+/* ===========================================================================
+ * Test inflate() with a preset dictionary
+ */
+void test_dict_inflate(unsigned char *compr, size_t comprLen) {
+ int err;
+ PREFIX3(stream) d_stream; /* decompression stream */
+ unsigned char *uncompr;
+
+ d_stream.zalloc = zalloc;
+ d_stream.zfree = zfree;
+ d_stream.opaque = (void *)0;
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = (unsigned int)comprLen;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ CHECK_ERR(err, "inflateInit");
+
+ uncompr = (uint8_t *)calloc(1, dataLen);
+ d_stream.next_out = uncompr;
+ d_stream.avail_out = (unsigned int)dataLen;
+
+ for (;;) {
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ if (err == Z_STREAM_END)
+ break;
+ if (err == Z_NEED_DICT) {
+ if (d_stream.adler != dictId) {
+ fprintf(stderr, "unexpected dictionary");
+ exit(1);
+ }
+ err = PREFIX(inflateSetDictionary)(
+ &d_stream, (const unsigned char *)data, dictionaryLen);
+ }
+ CHECK_ERR(err, "inflate with dict");
+ }
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ CHECK_ERR(err, "inflateEnd");
+
+ if (memcmp(uncompr, data, dataLen)) {
+ fprintf(stderr, "bad inflate with dict\n");
+ exit(1);
+ }
+
+ free(uncompr);
+}
+
+int LLVMFuzzerTestOneInput(const uint8_t *d, size_t size) {
+ size_t comprLen = 0;
+ uint8_t *compr;
+
+ /* Discard inputs larger than 100Kb. */
+ static size_t kMaxSize = 100 * 1024;
+
+ if (size < 1 || size > kMaxSize)
+ return 0;
+
+ data = d;
+ dataLen = size;
+
+ /* Set up the contents of the dictionary. The size of the dictionary is
+ intentionally selected to be of unusual size. To help cover more corner
+ cases, the size of the dictionary is read from the input data. */
+ dictionaryLen = data[0];
+ if (dictionaryLen > dataLen)
+ dictionaryLen = (unsigned int)dataLen;
+
+ test_dict_deflate(&compr, &comprLen);
+ test_dict_inflate(compr, comprLen);
+
+ free(compr);
+
+ /* This function must return 0. */
+ return 0;
+}
diff --git a/neozip/test/fuzz/fuzzer_example_flush.c b/neozip/test/fuzz/fuzzer_example_flush.c
new file mode 100644
index 0000000000..baa6988e36
--- /dev/null
+++ b/neozip/test/fuzz/fuzzer_example_flush.c
@@ -0,0 +1,119 @@
+#include <stdio.h>
+#include <assert.h>
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#define CHECK_ERR(err, msg) { \
+ if (err != Z_OK) { \
+ fprintf(stderr, "%s error: %d\n", msg, err); \
+ exit(1); \
+ } \
+}
+
+static const uint8_t *data;
+static size_t dataLen;
+static alloc_func zalloc = NULL;
+static free_func zfree = NULL;
+
+/* ===========================================================================
+ * Test deflate() with full flush
+ */
+void test_flush(unsigned char *compr, z_size_t *comprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+ unsigned int len = (unsigned int)dataLen;
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (void *)0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ c_stream.next_in = (z_const unsigned char *)data;
+ c_stream.next_out = compr;
+ c_stream.avail_in = 3;
+ c_stream.avail_out = (unsigned int)*comprLen;
+ err = PREFIX(deflate)(&c_stream, Z_FULL_FLUSH);
+ CHECK_ERR(err, "deflate flush 1");
+
+ compr[3]++; /* force an error in first compressed block */
+ c_stream.avail_in = len - 3;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err != Z_STREAM_END) {
+ CHECK_ERR(err, "deflate flush 2");
+ }
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+
+ *comprLen = (z_size_t)c_stream.total_out;
+}
+
+/* ===========================================================================
+ * Test inflateSync()
+ */
+void test_sync(unsigned char *compr, size_t comprLen, unsigned char *uncompr, size_t uncomprLen) {
+ int err;
+ PREFIX3(stream) d_stream; /* decompression stream */
+
+ d_stream.zalloc = zalloc;
+ d_stream.zfree = zfree;
+ d_stream.opaque = (void *)0;
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = 2; /* just read the zlib header */
+
+ err = PREFIX(inflateInit)(&d_stream);
+ CHECK_ERR(err, "inflateInit");
+
+ d_stream.next_out = uncompr;
+ d_stream.avail_out = (unsigned int)uncomprLen;
+
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "inflate");
+
+ d_stream.avail_in = (unsigned int)comprLen - 2; /* read all compressed data */
+ err = PREFIX(inflateSync)(&d_stream); /* but skip the damaged part */
+ CHECK_ERR(err, "inflateSync");
+
+ err = PREFIX(inflate)(&d_stream, Z_FINISH);
+ if (err != Z_STREAM_END) {
+ fprintf(stderr, "inflate should report Z_STREAM_END\n");
+ exit(1);
+ }
+ err = PREFIX(inflateEnd)(&d_stream);
+ CHECK_ERR(err, "inflateEnd");
+}
+
+int LLVMFuzzerTestOneInput(const uint8_t *d, size_t size) {
+ z_size_t comprLen = 100 + 2 * PREFIX(compressBound)(size);
+ z_size_t uncomprLen = (z_size_t)size;
+ uint8_t *compr, *uncompr;
+
+ /* Discard inputs larger than 1Mb. */
+ static size_t kMaxSize = 1024 * 1024;
+
+ // This test requires at least 3 bytes of input data.
+ if (size <= 3 || size > kMaxSize)
+ return 0;
+
+ data = d;
+ dataLen = size;
+ compr = (uint8_t *)calloc(1, comprLen);
+ uncompr = (uint8_t *)calloc(1, uncomprLen);
+
+ test_flush(compr, &comprLen);
+ test_sync(compr, comprLen, uncompr, uncomprLen);
+
+ free(compr);
+ free(uncompr);
+
+ /* This function must return 0. */
+ return 0;
+}
diff --git a/neozip/test/fuzz/fuzzer_example_large.c b/neozip/test/fuzz/fuzzer_example_large.c
new file mode 100644
index 0000000000..4114597218
--- /dev/null
+++ b/neozip/test/fuzz/fuzzer_example_large.c
@@ -0,0 +1,137 @@
+#include <stdio.h>
+#include <assert.h>
+#include <inttypes.h>
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#define CHECK_ERR(err, msg) { \
+ if (err != Z_OK) { \
+ fprintf(stderr, "%s error: %d\n", msg, err); \
+ exit(1); \
+ } \
+}
+
+static const uint8_t *data;
+static size_t dataLen;
+static alloc_func zalloc = NULL;
+static free_func zfree = NULL;
+static unsigned int diff;
+
+/* ===========================================================================
+ * Test deflate() with large buffers and dynamic change of compression level
+ */
+void test_large_deflate(unsigned char *compr, size_t comprLen, unsigned char *uncompr, size_t uncomprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (void *)0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_BEST_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ c_stream.next_out = compr;
+ c_stream.avail_out = (unsigned int)comprLen;
+
+ /* At this point, uncompr is still mostly zeroes, so it should compress
+ * very well:
+ */
+ c_stream.next_in = uncompr;
+ c_stream.avail_in = (unsigned int)uncomprLen;
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate large 1");
+ if (c_stream.avail_in != 0) {
+ fprintf(stderr, "deflate not greedy\n");
+ exit(1);
+ }
+
+ /* Feed in already compressed data and switch to no compression: */
+ PREFIX(deflateParams)(&c_stream, Z_NO_COMPRESSION, Z_DEFAULT_STRATEGY);
+ c_stream.next_in = compr;
+ diff = (unsigned int)(c_stream.next_out - compr);
+ c_stream.avail_in = diff;
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate large 2");
+
+ /* Switch back to compressing mode: */
+ PREFIX(deflateParams)(&c_stream, Z_BEST_COMPRESSION, Z_FILTERED);
+ c_stream.next_in = uncompr;
+ c_stream.avail_in = (unsigned int)uncomprLen;
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate large 3");
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err != Z_STREAM_END) {
+ fprintf(stderr, "deflate large should report Z_STREAM_END\n");
+ exit(1);
+ }
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+}
+
+/* ===========================================================================
+ * Test inflate() with large buffers
+ */
+void test_large_inflate(unsigned char *compr, size_t comprLen, unsigned char *uncompr, size_t uncomprLen) {
+ int err;
+ PREFIX3(stream) d_stream; /* decompression stream */
+
+ d_stream.zalloc = zalloc;
+ d_stream.zfree = zfree;
+ d_stream.opaque = (void *)0;
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = (unsigned int)comprLen;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ CHECK_ERR(err, "inflateInit");
+
+ for (;;) {
+ d_stream.next_out = uncompr; /* discard the output */
+ d_stream.avail_out = (unsigned int)uncomprLen;
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ if (err == Z_STREAM_END)
+ break;
+ CHECK_ERR(err, "large inflate");
+ }
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ CHECK_ERR(err, "inflateEnd");
+
+ if (d_stream.total_out != 2 * uncomprLen + diff) {
+ fprintf(stderr, "bad large inflate: %" PRIu64 "\n", (uint64_t)d_stream.total_out);
+ exit(1);
+ }
+}
+
+int LLVMFuzzerTestOneInput(const uint8_t *d, size_t size) {
+ size_t comprLen = 100 + 3 * size;
+ size_t uncomprLen = comprLen;
+ uint8_t *compr, *uncompr;
+
+ /* Discard inputs larger than 512Kb. */
+ static size_t kMaxSize = 512 * 1024;
+
+ if (size < 1 || size > kMaxSize)
+ return 0;
+
+ data = d;
+ dataLen = size;
+ compr = (uint8_t *)calloc(1, comprLen);
+ uncompr = (uint8_t *)calloc(1, uncomprLen);
+
+ test_large_deflate(compr, comprLen, uncompr, uncomprLen);
+ test_large_inflate(compr, comprLen, uncompr, uncomprLen);
+
+ free(compr);
+ free(uncompr);
+
+ /* This function must return 0. */
+ return 0;
+}
diff --git a/neozip/test/fuzz/fuzzer_example_small.c b/neozip/test/fuzz/fuzzer_example_small.c
new file mode 100644
index 0000000000..e59c720835
--- /dev/null
+++ b/neozip/test/fuzz/fuzzer_example_small.c
@@ -0,0 +1,118 @@
+#include <stdio.h>
+#include <assert.h>
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#define CHECK_ERR(err, msg) { \
+ if (err != Z_OK) { \
+ fprintf(stderr, "%s error: %d\n", msg, err); \
+ exit(1); \
+ } \
+}
+
+static const uint8_t *data;
+static size_t dataLen;
+static alloc_func zalloc = NULL;
+static free_func zfree = NULL;
+
+/* ===========================================================================
+ * Test deflate() with small buffers
+ */
+void test_deflate(unsigned char *compr, size_t comprLen) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ int err;
+ unsigned long len = (unsigned long)dataLen;
+
+ c_stream.zalloc = zalloc;
+ c_stream.zfree = zfree;
+ c_stream.opaque = (void *)0;
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ CHECK_ERR(err, "deflateInit");
+
+ c_stream.next_in = (z_const unsigned char *)data;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != len && c_stream.total_out < comprLen) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ CHECK_ERR(err, "deflate small 1");
+ }
+ /* Finish the stream, still forcing small buffers: */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END)
+ break;
+ CHECK_ERR(err, "deflate small 2");
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+}
+
+/* ===========================================================================
+ * Test inflate() with small buffers
+ */
+void test_inflate(unsigned char *compr, size_t comprLen, unsigned char *uncompr, size_t uncomprLen) {
+ int err;
+ PREFIX3(stream) d_stream; /* decompression stream */
+
+ d_stream.zalloc = zalloc;
+ d_stream.zfree = zfree;
+ d_stream.opaque = (void *)0;
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = 0;
+ d_stream.next_out = uncompr;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ CHECK_ERR(err, "inflateInit");
+
+ while (d_stream.total_out < uncomprLen && d_stream.total_in < comprLen) {
+ d_stream.avail_in = d_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ if (err == Z_STREAM_END)
+ break;
+ CHECK_ERR(err, "inflate");
+ }
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ CHECK_ERR(err, "inflateEnd");
+
+ if (memcmp(uncompr, data, dataLen)) {
+ fprintf(stderr, "bad inflate\n");
+ exit(1);
+ }
+}
+
+int LLVMFuzzerTestOneInput(const uint8_t *d, size_t size) {
+ size_t comprLen = PREFIX(compressBound)(size);
+ size_t uncomprLen = size;
+ uint8_t *compr, *uncompr;
+
+ /* Discard inputs larger than 1Mb. */
+ static size_t kMaxSize = 1024 * 1024;
+
+ if (size < 1 || size > kMaxSize)
+ return 0;
+
+ data = d;
+ dataLen = size;
+ compr = (uint8_t *)calloc(1, comprLen);
+ uncompr = (uint8_t *)calloc(1, uncomprLen);
+
+ test_deflate(compr, comprLen);
+ test_inflate(compr, comprLen, uncompr, uncomprLen);
+
+ free(compr);
+ free(uncompr);
+
+ /* This function must return 0. */
+ return 0;
+}
diff --git a/neozip/test/fuzz/fuzzer_minigzip.c b/neozip/test/fuzz/fuzzer_minigzip.c
new file mode 100644
index 0000000000..3f58f4a299
--- /dev/null
+++ b/neozip/test/fuzz/fuzzer_minigzip.c
@@ -0,0 +1,317 @@
+/* minigzip.c -- simulate gzip using the zlib compression library
+ * Copyright (C) 1995-2006, 2010, 2011, 2016 Jean-loup Gailly
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+/*
+ * minigzip is a minimal implementation of the gzip utility. This is
+ * only an example of using zlib and isn't meant to replace the
+ * full-featured gzip. No attempt is made to deal with file systems
+ * limiting names to 14 or 8+3 characters, etc... Error checking is
+ * very limited. So use minigzip only for testing; use gzip for the
+ * real thing.
+ */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+#include <stdio.h>
+#include <assert.h>
+
+#ifdef USE_MMAP
+# include <sys/types.h>
+# include <sys/mman.h>
+# include <sys/stat.h>
+#endif
+
+#if defined(_WIN32) || defined(__CYGWIN__)
+# include <fcntl.h>
+# include <io.h>
+# define SET_BINARY_MODE(file) setmode(fileno(file), O_BINARY)
+#else
+# define SET_BINARY_MODE(file)
+#endif
+
+#if defined(_MSC_VER) && _MSC_VER < 1900
+# define snprintf _snprintf
+#endif
+
+#if !defined(Z_HAVE_UNISTD_H) && !defined(_LARGEFILE64_SOURCE)
+#ifndef _WIN32 /* unlink already in stdio.h for Win32 */
+extern int unlink (const char *);
+#endif
+#endif
+
+#ifndef GZ_SUFFIX
+# define GZ_SUFFIX ".gz"
+#endif
+#define SUFFIX_LEN (sizeof(GZ_SUFFIX)-1)
+
+#define BUFLEN 16384 /* read buffer size */
+#define BUFLENW (BUFLEN * 3) /* write buffer size */
+#define MAX_NAME_LEN 1024
+
+static const char *prog = "minigzip_fuzzer";
+
+/* ===========================================================================
+ * Display error message and exit
+ */
+static void error(const char *msg) {
+ fprintf(stderr, "%s: %s\n", prog, msg);
+ exit(1);
+}
+
+#ifdef USE_MMAP /* MMAP version, Miguel Albrecht <malbrech@eso.org> */
+/* ===========================================================================
+ * Try compressing the input file at once using mmap. Return Z_OK if
+ * success, Z_ERRNO otherwise.
+ */
+static int gz_compress_mmap(FILE *in, gzFile out) {
+ int err;
+ int ifd = fileno(in);
+ void *buf; /* mmap'ed buffer for the entire input file */
+ size_t buf_len; /* length of the input file */
+ size_t len;
+ struct stat sb;
+
+ /* Determine the size of the file, needed for mmap: */
+ if (fstat(ifd, &sb) < 0) return Z_ERRNO;
+ /* Check size_t overflow */
+ if (sb.st_size <= 0 || sb.st_size > PTRDIFF_MAX) return Z_ERRNO;
+ buf_len = (size_t)sb.st_size;
+
+ /* Now do the actual mmap: */
+ buf = mmap(NULL, buf_len, PROT_READ, MAP_SHARED, ifd, (off_t)0);
+ if (buf == MAP_FAILED) return Z_ERRNO;
+
+ /* Compress the whole file at once: */
+ len = PREFIX(gzfwrite)(buf, 1, buf_len, out);
+
+ if (len != buf_len) error(PREFIX(gzerror)(out, &err));
+
+ munmap(buf, buf_len);
+ fclose(in);
+ if (PREFIX(gzclose)(out) != Z_OK) error("failed gzclose");
+ return Z_OK;
+}
+#endif /* USE_MMAP */
+
+/* ===========================================================================
+ * Compress input to output then close both files.
+ */
+
+static void gz_compress(FILE *in, gzFile out) {
+ char buf[BUFLEN];
+ int len;
+ int err;
+
+#ifdef USE_MMAP
+ /* Try first compressing with mmap. If mmap fails (minigzip used in a
+ * pipe), use the normal fread loop.
+ */
+ if (gz_compress_mmap(in, out) == Z_OK) return;
+#endif
+ /* Clear out the contents of buf before reading from the file to avoid
+ MemorySanitizer: use-of-uninitialized-value warnings. */
+ memset(buf, 0, sizeof(buf));
+ for (;;) {
+ len = (int)fread(buf, 1, sizeof(buf), in);
+ if (ferror(in)) {
+ perror("fread");
+ exit(1);
+ }
+ if (len == 0) break;
+
+ if (PREFIX(gzwrite)(out, buf, (unsigned)len) != len) error(PREFIX(gzerror)(out, &err));
+ }
+ fclose(in);
+ if (PREFIX(gzclose)(out) != Z_OK) error("failed gzclose");
+}
+
+/* ===========================================================================
+ * Uncompress input to output then close both files.
+ */
+static void gz_uncompress(gzFile in, FILE *out) {
+ char buf[BUFLENW];
+ int len;
+ int err;
+
+ for (;;) {
+ len = PREFIX(gzread)(in, buf, sizeof(buf));
+ if (len < 0) error (PREFIX(gzerror)(in, &err));
+ if (len == 0) break;
+
+ if ((int)fwrite(buf, 1, (unsigned)len, out) != len) {
+ error("failed fwrite");
+ }
+ }
+ if (fclose(out)) error("failed fclose");
+
+ if (PREFIX(gzclose)(in) != Z_OK) error("failed gzclose");
+}
+
+
+/* ===========================================================================
+ * Compress the given file: create a corresponding .gz file and remove the
+ * original.
+ */
+static void file_compress(char *file, char *mode) {
+ char outfile[MAX_NAME_LEN];
+ FILE *in;
+ gzFile out;
+
+ if (strlen(file) + strlen(GZ_SUFFIX) >= sizeof(outfile)) {
+ fprintf(stderr, "%s: filename too long\n", prog);
+ exit(1);
+ }
+
+ snprintf(outfile, sizeof(outfile), "%s%s", file, GZ_SUFFIX);
+
+ in = fopen(file, "rb");
+ if (in == NULL) {
+ perror(file);
+ exit(1);
+ }
+ out = PREFIX(gzopen)(outfile, mode);
+ if (out == NULL) {
+ fprintf(stderr, "%s: can't gzopen %s\n", prog, outfile);
+ exit(1);
+ }
+ gz_compress(in, out);
+
+ unlink(file);
+}
+
+/* ===========================================================================
+ * Uncompress the given file and remove the original.
+ */
+static void file_uncompress(char *file) {
+ char buf[MAX_NAME_LEN];
+ char *infile, *outfile;
+ FILE *out;
+ gzFile in;
+ size_t len = strlen(file);
+
+ if (len + strlen(GZ_SUFFIX) >= sizeof(buf)) {
+ fprintf(stderr, "%s: filename too long\n", prog);
+ exit(1);
+ }
+
+ snprintf(buf, sizeof(buf), "%s", file);
+
+ if (len > SUFFIX_LEN && strcmp(file+len-SUFFIX_LEN, GZ_SUFFIX) == 0) {
+ infile = file;
+ outfile = buf;
+ outfile[len-3] = '\0';
+ } else {
+ outfile = file;
+ infile = buf;
+ snprintf(buf + len, sizeof(buf) - len, "%s", GZ_SUFFIX);
+ }
+ in = PREFIX(gzopen)(infile, "rb");
+ if (in == NULL) {
+ fprintf(stderr, "%s: can't gzopen %s\n", prog, infile);
+ exit(1);
+ }
+ out = fopen(outfile, "wb");
+ if (out == NULL) {
+ perror(file);
+ exit(1);
+ }
+
+ gz_uncompress(in, out);
+
+ unlink(infile);
+}
+
+int LLVMFuzzerTestOneInput(const uint8_t *data, size_t dataLen) {
+ char *inFileName = "minigzip_fuzzer.out";
+ char *outFileName = "minigzip_fuzzer.out.gz";
+ char outmode[20];
+ FILE *in;
+ char buf[BUFLEN];
+ uint32_t offset = 0;
+
+ /* Discard inputs larger than 1Mb. */
+ static size_t kMaxSize = 1024 * 1024;
+ if (dataLen < 1 || dataLen > kMaxSize)
+ return 0;
+
+ in = fopen(inFileName, "wb");
+ if (fwrite(data, 1, (unsigned)dataLen, in) != dataLen)
+ error("failed fwrite");
+ if (fclose(in))
+ error("failed fclose");
+
+ memset(outmode, 0, sizeof(outmode));
+ snprintf(outmode, sizeof(outmode), "%s", "wb");
+
+ /* Compression level: [0..9]. */
+ outmode[2] = '0' + (data[0] % 10);
+
+ switch (data[dataLen-1] % 6) {
+ default:
+ case 0:
+ outmode[3] = 0;
+ break;
+ case 1:
+ /* compress with Z_FILTERED */
+ outmode[3] = 'f';
+ break;
+ case 2:
+ /* compress with Z_HUFFMAN_ONLY */
+ outmode[3] = 'h';
+ break;
+ case 3:
+ /* compress with Z_RLE */
+ outmode[3] = 'R';
+ break;
+ case 4:
+ /* compress with Z_FIXED */
+ outmode[3] = 'F';
+ break;
+ case 5:
+ /* direct */
+ outmode[3] = 'T';
+ break;
+ }
+
+ file_compress(inFileName, outmode);
+
+ /* gzopen does not support reading in direct mode */
+ if (outmode[3] == 'T')
+ inFileName = outFileName;
+ else
+ file_uncompress(outFileName);
+
+ /* Check that the uncompressed file matches the input data. */
+ in = fopen(inFileName, "rb");
+ if (in == NULL) {
+ perror(inFileName);
+ exit(1);
+ }
+
+ memset(buf, 0, sizeof(buf));
+ for (;;) {
+ int len = (int)fread(buf, 1, sizeof(buf), in);
+ if (ferror(in)) {
+ perror("fread");
+ exit(1);
+ }
+ if (len == 0)
+ break;
+ int c = memcmp(data + offset, buf, len);
+ assert(0 == c);
+ Z_UNUSED(c); // in Release build, assert() is a no-op.
+ offset += len;
+ }
+
+ if (fclose(in))
+ error("failed fclose");
+
+ /* This function must return 0. */
+ return 0;
+}
diff --git a/neozip/test/fuzz/standalone_fuzz_target_runner.c b/neozip/test/fuzz/standalone_fuzz_target_runner.c
new file mode 100644
index 0000000000..810a56072f
--- /dev/null
+++ b/neozip/test/fuzz/standalone_fuzz_target_runner.c
@@ -0,0 +1,37 @@
+#include <assert.h>
+#include <stdio.h>
+
+#include "zbuild.h"
+
+extern int LLVMFuzzerTestOneInput(const unsigned char *data, size_t size);
+
+int main(int argc, char **argv) {
+ int i;
+ fprintf(stderr, "StandaloneFuzzTargetMain: running %d inputs\n", argc - 1);
+
+ for (i = 1; i < argc; i++) {
+ size_t len, n_read, err;
+ unsigned char *buf;
+ FILE *f = fopen(argv[i], "rb+");
+ if (!f) {
+ /* Failed to open this file: it may be a directory. */
+ fprintf(stderr, "Skipping: %s\n", argv[i]);
+ continue;
+ }
+ fprintf(stderr, "Running: %s %s\n", argv[0], argv[i]);
+ fseek(f, 0, SEEK_END);
+ len = ftell(f);
+ fseek(f, 0, SEEK_SET);
+ buf = (unsigned char *)malloc(len);
+ n_read = fread(buf, 1, len, f);
+ assert(n_read == len);
+ LLVMFuzzerTestOneInput(buf, len);
+ free(buf);
+ err = fclose(f);
+ assert(err == 0);
+ Z_UNUSED(err);
+ fprintf(stderr, "Done: %s: (%d bytes)\n", argv[i], (int)n_read);
+ }
+
+ return 0;
+}
diff --git a/neozip/test/gh1235.c b/neozip/test/gh1235.c
new file mode 100644
index 0000000000..7bf8738f34
--- /dev/null
+++ b/neozip/test/gh1235.c
@@ -0,0 +1,39 @@
+#include <assert.h>
+#include <stdio.h>
+#include <string.h>
+#include "zutil.h"
+
+int main(void) {
+ unsigned char plain[32];
+ unsigned char compressed[130];
+ PREFIX3(stream) strm;
+ z_size_t bound;
+ z_size_t bytes;
+
+ for (int i = 0; i <= 32; i++) {
+ memset(plain, 6, i);
+ memset(&strm, 0, sizeof(strm));
+ PREFIX(deflateInit2)(&strm, 0, 8, 31, 1, Z_DEFAULT_STRATEGY);
+ bound = PREFIX(deflateBound)(&strm, i);
+ strm.next_in = plain;
+ strm.next_out = compressed;
+ strm.avail_in = i;
+ strm.avail_out = sizeof(compressed);
+ if (PREFIX(deflate)(&strm, Z_FINISH) != Z_STREAM_END) return -1;
+ if (strm.avail_in != 0) return -1;
+ printf("bytes = %2i, deflateBound = %2zi, total_out = %2zi\n", i, (size_t)bound, (size_t)strm.total_out);
+ if (bound < strm.total_out) return -1;
+ if (PREFIX(deflateEnd)(&strm) != Z_OK) return -1;
+ }
+ for (int i = 0; i <= 32; i++) {
+ bytes = sizeof(compressed);
+ for (int j = 0; j < i; j++) {
+ plain[j] = j;
+ }
+ bound = PREFIX(compressBound)(i);
+ if (PREFIX(compress2)(compressed, &bytes, plain, i, 1) != Z_OK) return -1;
+ printf("bytes = %2i, compressBound = %2zi, total_out = %2zi\n", i, (size_t)bound, (size_t)bytes);
+ if (bytes > bound) return -1;
+ }
+ return 0;
+}
diff --git a/neozip/test/hash_test_strings_p.h b/neozip/test/hash_test_strings_p.h
new file mode 100644
index 0000000000..447d1a6449
--- /dev/null
+++ b/neozip/test/hash_test_strings_p.h
@@ -0,0 +1,375 @@
+#ifndef HASH_TEST_STRINGS_P_H
+#define HASH_TEST_STRINGS_P_H
+
+#define HASH_TEST_MAX_LENGTH 615336U
+
+ALIGNED_(16) static uint8_t hash_fullwin_buf[HASH_TEST_MAX_LENGTH];
+
+static uint8_t* hash_setup_big_buf() {
+ for (size_t i = 0; i < HASH_TEST_MAX_LENGTH; ++i) {
+ uint8_t ic = (uint8_t)(i % 256);
+ hash_fullwin_buf[i] = ic;
+ }
+
+ return hash_fullwin_buf;
+}
+
+static uint8_t *big_test = hash_setup_big_buf();
+
+static const uint8_t long_string[5552] = {
+ 'q','j','d','w','q','4','8','m','B','u','k','J','V','U','z','V','V','f','M','j','i','q','S','W','L','5','G','n','F','S','P','Q',
+ 'Q','D','i','6','m','E','9','Z','a','A','P','h','9','d','r','b','5','t','X','U','U','L','w','q','e','k','E','H','6','W','7','k',
+ 'A','x','N','Q','R','k','d','V','5','y','n','U','N','W','Q','Y','i','W','5','9','R','p','D','C','x','p','u','h','C','a','m','r',
+ 'z','n','z','A','d','J','6','u','N','e','r','x','7','Q','3','v','V','h','H','S','H','S','f','K','f','e','E','T','9','J','f','K',
+ 'w','t','x','J','2','y','7','B','x','X','X','p','G','b','T','g','3','k','U','6','E','Z','M','t','J','q','v','n','S','T','6','x',
+ '5','x','4','P','z','p','M','F','V','b','d','m','f','G','n','J','m','w','z','K','8','a','q','E','D','e','b','3','h','B','V','g',
+ 'y','3','P','L','5','8','r','z','X','b','Q','g','H','7','L','c','Z','B','3','C','4','y','t','u','k','z','h','v','C','Y','p','p',
+ '8','H','v','5','X','w','4','L','R','V','V','4','U','C','8','4','T','E','a','N','Z','S','7','U','u','z','f','H','p','P','J','u',
+ 'Y','Z','h','T','6','e','v','z','V','F','h','u','y','H','b','k','J','M','f','3','6','g','y','L','E','W','t','B','B','d','d','9',
+ 'u','M','Z','k','F','G','f','h','q','k','5','k','f','r','M','7','c','M','7','y','n','u','8','b','d','7','Q','f','E','m','F','K',
+ 'x','W','f','B','2','F','8','5','q','z','y','3','R','i','U','m','X','k','h','N','J','y','B','C','h','u','x','4','f','k','J','5',
+ '6','X','T','W','h','8','J','4','m','K','p','N','3','g','C','g','A','E','e','Z','x','A','P','2','E','4','t','Q','5','X','Y','j',
+ '6','m','b','h','G','a','v','6','t','v','6','C','M','G','P','u','B','C','A','V','b','2','9','d','2','c','5','a','b','X','w','V',
+ 'G','6','a','7','c','8','G','6','K','U','Q','m','w','P','V','5','N','x','b','v','x','E','N','C','A','N','t','v','N','B','z','X',
+ 'B','R','q','U','n','i','A','Q','d','m','a','D','7','Y','f','3','J','8','Y','m','w','Z','b','w','r','H','q','E','j','c','u','E',
+ 'i','i','S','b','n','G','P','a','F','j','c','R','D','D','G','F','v','i','a','i','M','7','B','e','w','m','L','E','F','2','Y','4',
+ '4','7','Y','C','t','y','q','7','2','V','G','m','m','E','e','V','u','m','L','p','R','X','W','z','V','K','E','k','p','V','r','J',
+ 'd','N','3','t','i','u','S','V','w','2','w','U','Q','3','F','q','4','h','q','k','B','7','R','X','B','F','Q','Z','b','b','4','E',
+ 'K','v','T','B','w','k','V','C','x','d','K','g','N','S','u','k','p','9','z','w','c','y','U','M','V','E','2','Y','P','F','h','9',
+ 'T','y','h','w','b','9','P','w','G','c','W','W','k','j','J','Q','N','B','U','G','6','9','U','b','v','a','N','9','N','C','G','n',
+ 'x','R','6','9','Q','C','h','e','j','P','U','h','U','R','i','4','T','B','W','5','w','m','J','p','e','7','r','9','t','c','9','Z',
+ 'j','p','r','F','C','e','U','P','x','T','A','N','7','6','a','i','y','e','w','F','C','X','H','Y','G','C','q','q','m','A','t','7',
+ 'z','u','D','S','L','U','C','f','7','e','t','G','V','F','u','c','x','5','M','7','N','i','M','6','h','2','n','H','S','h','K','M',
+ 'd','T','z','X','d','x','x','4','q','z','d','D','a','2','X','r','p','r','R','m','U','U','y','S','H','c','a','F','e','Z','a','U',
+ 'P','9','V','J','e','q','j','Y','M','x','e','v','K','7','M','P','N','2','b','6','f','P','h','H','4','U','X','k','n','f','Q','M',
+ '9','9','a','J','N','e','w','y','f','F','P','p','a','F','Y','a','M','L','W','i','T','M','B','3','U','v','X','v','G','p','7','a',
+ 'f','u','4','S','y','X','9','g','g','b','B','G','c','i','M','U','n','m','a','7','q','f','9','n','Q','2','V','L','6','e','T','R',
+ '2','4','9','d','6','Q','B','Y','q','2','4','9','G','Q','E','b','Y','5','u','2','T','Q','G','L','5','n','4','Y','2','y','G','F',
+ 'j','c','8','M','G','L','e','3','a','N','v','A','A','W','t','R','S','2','i','D','R','8','j','d','Q','3','6','C','V','M','e','w',
+ 'j','U','Z','w','M','4','b','m','8','J','P','Q','L','P','R','c','r','b','V','C','3','N','8','K','4','d','W','D','N','U','A','A',
+ '2','J','p','b','D','d','p','j','N','C','k','A','j','B','a','c','u','v','L','X','U','B','4','U','X','W','e','C','b','C','u','d',
+ 'A','v','U','z','P','t','D','e','5','y','Y','c','x','K','4','7','j','e','e','D','M','5','K','B','Q','6','d','p','T','T','R','j',
+ 'M','E','E','M','r','N','6','8','7','q','x','F','S','x','E','U','4','d','B','6','5','W','C','e','m','J','e','5','j','w','V','J',
+ 'w','v','d','7','v','f','K','u','m','8','h','W','T','e','Q','j','M','8','R','Y','d','B','R','2','r','F','j','7','d','E','q','V',
+ 'k','e','j','P','9','3','X','R','p','R','b','A','v','7','4','A','M','2','k','r','E','7','X','3','7','k','5','c','B','7','W','5',
+ 'u','J','B','Q','R','2','V','7','h','Q','h','9','g','G','y','c','c','x','M','z','7','G','2','J','w','v','j','5','9','E','b','k',
+ 'z','W','T','C','b','4','K','R','X','T','k','V','S','G','2','j','d','6','y','E','4','P','H','K','w','a','m','F','Z','x','9','j',
+ 'i','2','d','X','u','a','4','a','M','z','8','p','p','z','g','t','H','5','Y','L','Q','c','R','F','m','E','n','G','X','d','f','7',
+ 'x','8','j','g','J','z','D','S','a','S','h','y','5','h','Y','N','p','w','Y','W','h','E','N','v','8','Q','D','W','Z','k','f','e',
+ 'r','Z','D','7','R','D','T','2','H','X','z','G','X','f','v','E','z','P','v','U','H','e','4','R','W','U','x','t','t','4','w','p',
+ 'r','z','K','9','f','g','h','P','r','f','v','k','h','c','e','5','8','a','L','F','J','M','G','R','a','N','q','S','g','W','e','7',
+ 'R','K','R','A','B','z','6','v','S','p','w','n','e','x','k','E','r','j','f','Y','x','8','9','z','e','T','6','E','G','v','9','f',
+ 'D','A','N','v','y','U','7','D','M','2','E','5','W','G','6','b','9','q','g','Y','F','f','k','q','Q','E','x','Y','C','R','G','6',
+ 'R','h','4','J','d','U','D','b','9','b','8','r','f','V','d','g','b','2','z','Z','d','m','X','v','j','Y','d','w','K','8','G','r',
+ 'v','j','N','y','c','h','u','5','z','g','J','H','a','Z','b','z','G','C','r','P','f','y','P','6','F','P','h','7','9','w','7','y',
+ 'R','3','n','E','h','G','D','4','m','Y','E','q','k','a','f','a','R','B','q','t','W','E','T','p','H','7','k','X','2','d','X','6',
+ 'W','n','H','m','w','M','i','Y','M','E','F','5','R','p','p','y','c','b','q','R','9','Y','t','T','7','w','u','K','M','Q','z','n',
+ 'P','7','g','x','6','R','4','x','N','v','w','M','6','j','K','v','7','a','Y','4','a','M','6','n','z','3','E','2','V','N','4','i',
+ 'E','f','u','W','J','W','e','8','3','Q','e','a','F','P','c','3','P','k','i','z','d','q','m','q','M','a','d','8','D','3','F','M',
+ 'e','d','E','j','z','V','e','d','z','H','D','J','8','X','g','E','i','u','c','7','A','w','S','J','2','A','e','8','r','q','C','m',
+ '9','9','a','g','2','y','y','P','M','e','8','3','T','r','m','8','j','v','r','p','M','Z','Y','g','a','9','2','d','H','B','m','9',
+ '4','6','a','Z','V','u','S','H','g','3','X','h','i','N','3','B','S','E','k','9','k','2','9','R','A','i','3','L','X','M','B','S',
+ '4','S','F','F','F','w','u','d','M','T','9','K','B','7','R','U','R','8','D','8','T','5','U','t','E','R','x','n','x','h','v','k',
+ 'B','N','k','E','U','T','t','p','r','u','Z','h','t','E','4','i','P','z','f','z','q','M','p','f','A','K','2','D','t','j','f','c',
+ 'Y','E','N','M','x','k','g','7','T','U','2','c','d','V','g','2','z','L','i','j','Y','q','b','T','A','y','v','a','t','N','5','t',
+ 'Z','5','n','D','a','y','G','n','P','x','V','k','M','8','t','J','Z','G','g','5','9','R','h','P','P','J','N','X','p','G','J','p',
+ '2','y','A','v','d','G','U','z','3','V','M','y','q','U','N','M','Y','p','B','Z','U','h','j','q','z','q','x','w','7','d','J','Q',
+ 'u','F','q','3','m','9','c','Q','W','d','6','7','b','V','M','7','P','j','r','k','9','h','R','z','m','b','i','B','u','E','L','9',
+ 'k','v','h','h','W','2','K','e','M','U','Q','p','A','Q','Y','J','G','E','T','U','L','f','q','G','4','z','K','K','y','a','U','W',
+ 'K','D','P','c','N','D','V','S','Y','6','T','p','R','y','y','J','a','T','J','W','Q','9','p','F','P','X','y','k','9','z','z','4',
+ 'G','d','a','z','X','n','h','4','J','P','W','V','D','r','U','m','a','8','a','b','X','F','J','X','L','4','S','X','5','W','p','W',
+ 'h','y','x','B','f','d','C','X','w','7','r','g','V','T','H','a','i','4','N','v','c','w','n','2','3','A','i','A','J','9','N','c',
+ 'z','7','n','n','3','n','h','n','i','R','i','b','E','h','k','U','c','c','U','6','f','x','q','N','y','H','M','e','J','B','U','B',
+ 'r','g','a','8','V','a','G','V','y','u','c','c','v','C','H','W','y','g','z','Q','2','4','k','S','m','f','e','G','H','v','Q','3',
+ 'P','e','f','S','V','P','c','U','e','3','P','x','d','c','7','c','f','g','D','w','2','t','q','y','g','2','Q','V','4','K','a','Q',
+ 'g','B','b','L','x','9','m','a','K','4','i','x','g','Q','M','9','W','N','2','w','p','v','2','k','B','y','9','k','A','c','f','Z',
+ 'D','R','A','S','d','v','w','f','f','q','t','K','3','j','x','D','G','P','n','u','r','v','U','k','A','2','d','R','N','T','G','4',
+ 'B','g','k','t','h','7','J','k','F','A','C','g','W','g','J','F','z','S','Q','c','v','M','b','D','e','H','Q','S','j','v','G','E',
+ 'R','k','f','i','P','E','F','N','6','y','p','b','t','M','c','Q','B','7','g','w','J','7','3','d','V','E','m','z','6','6','P','P',
+ 'd','i','r','J','H','D','H','J','r','b','n','v','z','W','e','u','g','B','u','Z','2','m','D','5','h','F','X','B','2','r','6','w',
+ 'u','Y','4','N','X','K','a','v','V','3','j','B','r','r','C','c','w','R','g','S','8','V','b','F','2','N','M','c','K','8','Y','E',
+ 'E','N','K','X','K','V','B','x','n','Q','p','a','q','f','k','t','z','Y','E','P','Z','y','n','a','c','B','V','a','x','b','d','X',
+ 'r','d','8','P','H','F','v','r','V','5','g','J','w','6','i','h','d','d','p','J','c','c','Y','S','q','W','m','U','5','G','b','H',
+ 'N','z','E','Z','K','E','y','M','c','G','i','d','w','Z','D','N','N','w','S','t','g','y','a','Y','b','H','e','M','N','f','Y','Y',
+ '7','a','9','b','M','U','k','a','V','k','C','n','a','k','U','H','A','M','i','v','k','t','a','d','i','3','F','d','5','2','A','p',
+ 'U','c','J','U','R','h','G','d','A','Y','v','q','X','c','w','r','x','4','j','3','4','b','F','d','a','L','N','J','3','Z','g','6',
+ 'W','Q','R','u','P','t','M','A','3','F','6','y','K','Y','G','2','t','v','u','p','w','b','G','S','K','5','p','4','d','E','w','6',
+ 'g','t','V','4','b','2','n','b','Z','3','3','f','m','d','2','c','a','m','j','X','U','E','D','6','6','F','w','H','9','7','Z','Y',
+ 'd','X','C','K','i','g','p','F','Y','n','2','b','F','4','R','u','V','k','f','d','J','i','a','b','X','H','7','v','K','a','Q','i',
+ 'W','M','j','M','i','a','i','n','F','h','r','q','4','w','x','m','4','q','y','F','8','w','i','4','D','B','A','L','B','U','u','K',
+ 'v','K','n','a','Q','i','e','k','v','Q','U','5','w','Q','c','r','A','6','M','w','y','g','n','e','v','K','7','W','u','2','y','f',
+ 'Q','u','e','r','y','a','w','V','p','f','Q','z','C','u','i','i','9','S','P','q','L','r','C','H','S','3','E','p','8','S','m','Q',
+ 'S','K','r','V','b','J','R','m','w','c','n','Q','N','Q','4','M','u','f','X','S','f','U','Z','x','U','4','j','K','4','G','z','X',
+ '7','Q','j','R','h','i','G','m','q','c','V','T','x','U','a','E','b','Q','q','E','i','F','K','7','K','i','R','J','5','Y','F','V',
+ 'B','7','R','8','M','i','f','j','Z','w','j','b','B','u','p','N','Y','r','S','r','f','h','E','J','T','B','P','R','D','V','K','A',
+ 'Z','A','R','j','z','f','B','i','Y','L','F','G','V','Y','w','R','C','P','G','m','9','7','C','5','e','y','w','N','K','N','a','Q',
+ 'j','a','W','3','2','f','G','w','n','M','6','F','u','K','8','g','8','M','G','r','e','9','Z','z','y','2','G','U','k','G','6','m',
+ 'A','D','4','n','b','8','a','q','S','m','S','6','5','R','5','D','5','S','B','g','X','T','8','Q','V','d','A','n','g','y','8','a',
+ 'h','7','K','9','H','D','J','F','w','G','4','w','T','J','F','f','i','8','X','e','B','J','K','H','7','V','y','X','7','E','8','S',
+ 'A','d','b','w','S','8','Y','a','J','d','j','E','V','J','T','E','U','R','5','7','V','M','E','v','D','3','z','5','r','k','z','v',
+ 'e','m','A','7','P','8','j','X','E','f','Q','q','8','D','g','y','8','j','A','e','B','c','c','M','z','k','2','c','q','v','v','y',
+ 'Q','y','h','g','p','v','M','m','m','C','G','D','k','8','u','T','n','Q','H','G','H','f','b','J','j','5','X','c','i','7','7','q',
+ 'b','R','8','b','b','z','f','f','h','Y','Q','7','u','B','X','e','i','j','M','q','C','T','M','v','t','J','J','w','b','F','v','J',
+ 'm','e','2','u','e','8','L','V','G','q','A','j','m','7','m','g','m','5','i','r','p','p','U','y','F','6','f','b','u','6','q','L',
+ 'M','E','t','V','W','C','t','e','p','w','a','n','w','y','X','h','8','e','G','C','H','q','r','X','G','9','c','h','7','k','8','M',
+ 'G','b','a','m','Y','Q','w','8','J','z','a','F','r','4','W','M','j','P','q','a','z','U','y','u','3','b','Z','f','Y','5','7','g',
+ 'N','M','h','M','a','3','C','K','6','6','f','a','p','i','f','q','k','T','i','z','w','f','Z','c','H','L','X','g','6','m','g','r',
+ 'w','Y','u','K','8','L','p','8','P','R','A','R','A','b','Z','V','a','x','V','c','G','A','H','t','Y','6','P','T','L','W','N','z',
+ 'g','z','k','d','E','v','C','t','Z','M','Z','K','4','w','9','5','D','W','f','U','8','5','u','6','b','5','B','8','g','y','C','E',
+ 'Q','z','e','9','p','N','S','P','D','D','f','x','k','Z','4','R','v','X','V','k','p','b','n','t','c','F','R','e','x','9','C','D',
+ 'J','2','6','f','Z','D','w','J','R','j','j','9','b','w','N','N','p','R','f','Z','z','j','F','r','Q','e','F','x','f','t','V','V',
+ 'A','y','J','G','W','Z','H','r','D','5','M','u','H','V','L','N','U','V','X','z','j','9','r','v','e','d','R','c','u','V','x','r',
+ 'c','6','k','L','h','q','w','U','W','Q','g','G','F','C','t','E','a','D','h','x','9','5','P','R','Z','E','M','5','f','4','2','t',
+ 'A','6','f','r','X','G','X','Y','B','8','G','E','n','B','v','x','f','M','R','f','B','z','Y','3','2','q','z','G','t','P','C','6',
+ '6','r','z','J','r','c','n','d','6','h','e','w','D','D','h','V','L','u','i','b','5','K','d','S','y','9','N','p','E','r','D','k',
+ 'B','z','u','v','d','Q','p','K','5','m','J','r','b','Y','Z','7','p','M','J','F','E','q','x','f','E','K','U','U','4','f','a','6',
+ 'g','5','a','q','D','U','8','F','y','R','a','P','5','5','x','z','6','V','T','P','D','m','y','7','U','5','C','A','7','Q','h','w',
+ 'r','6','x','g','Q','i','b','K','F','p','B','X','Q','h','i','E','r','C','z','v','x','W','Q','6','p','6','b','M','K','V','x','u',
+ 'k','d','R','S','k','Q','p','n','h','d','Q','Y','x','n','x','5','K','t','5','w','A','5','p','k','F','z','W','p','j','U','y','V',
+ 'x','G','m','y','L','A','X','H','G','A','a','J','5','E','P','q','E','U','7','p','6','A','9','n','d','G','D','g','i','h','t','W',
+ 'b','c','E','2','P','d','y','J','M','u','4','g','P','S','X','J','v','w','3','v','D','q','U','i','U','T','q','E','Y','5','2','t',
+ 'b','j','P','2','j','D','9','y','i','B','5','Y','3','X','L','w','m','V','X','z','X','r','Z','d','H','L','A','H','k','R','X','5',
+ 'i','L','m','q','3','p','a','G','P','j','g','h','R','P','Y','U','z','M','5','R','M','A','E','Q','V','c','w','r','4','M','S','k',
+ 'N','D','i','R','R','x','t','q','T','i','u','N','K','R','x','Z','K','a','g','G','y','9','c','j','J','S','9','3','H','T','f','F',
+ 'q','6','D','W','F','K','h','e','p','p','b','q','N','k','A','C','m','y','u','B','J','v','q','D','e','j','e','b','2','w','R','t',
+ 'J','N','j','F','T','A','8','L','m','X','i','T','g','j','c','V','4','V','h','2','h','R','p','2','9','k','c','c','G','D','h','z',
+ 't','i','h','t','W','R','n','Y','i','8','u','6','G','9','T','P','9','9','J','P','Y','R','h','X','K','z','h','L','W','r','C','U',
+ '2','L','T','k','2','m','6','W','L','P','T','Z','z','t','i','H','5','G','w','t','E','v','z','k','b','H','b','b','W','W','u','b',
+ 'i','h','C','Q','n','H','N','u','5','u','K','X','r','M','W','U','3','Y','k','P','2','k','x','f','x','C','w','z','z','b','G','8',
+ 'y','W','e','j','v','2','v','r','t','q','z','p','Y','d','w','6','Z','D','J','L','9','F','z','G','U','4','a','8','H','6','U','a',
+ 'q','7','y','Q','J','v','m','D','P','S','j','q','v','t','n','t','g','j','3','t','8','f','K','K','7','b','W','d','F','i','N','K',
+ 'a','R','V','V','V','v','m','A','Q','2','y','j','c','t','f','k','j','7','X','y','j','b','U','F','w','W','3','9','6','A','S','J',
+ 'p','q','2','Z','7','L','p','b','7','b','5','i','p','r','r','h','P','M','h','j','c','y','e','u','h','B','d','9','9','u','f','d',
+ 'g','u','p','w','u','9','S','c','L','U','g','A','y','V','F','V','6','D','D','X','i','V','m','u','Y','P','J','v','L','T','A','F',
+ 'M','Q','H','Z','6','v','8','p','A','L','P','z','C','V','a','C','h','X','j','W','8','G','z','j','d','M','4','u','x','w','H','g',
+ 'V','q','K','z','b','g','2','3','D','N','y','G','X','F','T','v','T','L','y','v','L','9','g','c','C','R','8','L','A','7','Y','N',
+ 't','n','R','6','b','n','m','9','i','h','t','T','F','a','V','N','J','J','3','J','q','p','W','7','b','T','G','r','M','k','a','7',
+ 'D','H','v','y','T','A','C','U','P','u','q','L','R','Y','4','q','h','y','f','F','J','x','K','7','N','B','v','3','a','Z','M','t',
+ 'U','x','8','9','V','E','t','j','K','r','u','Y','Y','A','u','w','Y','2','y','Q','z','S','n','J','B','2','t','X','x','K','z','g',
+ '6','d','n','i','7','Z','N','F','Q','6','w','N','r','b','k','d','W','X','S','t','c','U','m','6','4','2','e','w','6','x','Z','a',
+ 'Q','A','7','4','h','H','z','r','e','J','q','j','w','4','q','c','i','R','4','x','n','r','j','r','P','g','E','7','t','k','b','Z',
+ 'r','A','b','d','g','i','G','V','D','E','U','L','b','J','U','q','2','S','K','m','A','U','L','k','Q','4','N','p','k','G','C','6',
+ 'R','Z','B','y','B','B','j','y','x','L','d','h','L','G','6','x','H','z','T','5','d','Y','4','2','m','q','Q','y','H','6','c','N',
+ 'u','m','U','v','i','Y','Z','7','4','L','K','F','b','v','2','Y','h','x','8','a','R','w','q','x','E','a','T','y','m','C','2','Q',
+ 'U','T','D','Q','v','u','M','9','D','8','r','8','b','m','p','E','7','C','T','9','B','A','G','k','b','G','z','Z','G','L','N','k',
+ 'h','3','k','J','e','f','d','x','F','8','W','K','7','T','6','h','H','V','C','h','P','u','H','e','v','w','z','P','K','r','D','G',
+ 'X','Z','B','X','f','H','Q','4','e','D','y','W','Z','6','4','K','A','e','a','F','S','N','h','x','S','W','J','c','E','P','g','j',
+ 'a','w','T','m','Z','X','E','P','Y','R','M','2','R','2','X','N','F','X','Y','W','x','z','p','J','g','n','D','4','i','p','6','N',
+ 'r','9','G','k','E','h','T','h','U','h','x','B','Q','9','H','7','w','U','P','Q','d','G','6','q','p','j','j','v','C','a','X','J',
+ 'N','G','Y','w','f','H','C','x','F','k','z','3','9','r','h','8','7','5','V','i','V','C','R','q','x','N','2','2','i','W','F','U',
+ '7','T','H','f','z','E','a','n','u','Q','t','U','Y','G','t','3','A','m','r','6','d','f','e','n','e','z','F','u','U','N','8','m',
+ 'h','p','R','N','S','H','6','6','V','M','S','t','q','P','E','i','u','y','g','8','L','Q','Y','Y','G','e','W','W','C','G','y','b',
+ 'y','t','u','P','R','P','5','m','N','K','B','Z','w','f','t','k','x','3','L','b','q','d','w','S','G','E','h','R','F','4','q','e',
+ '5','6','F','2','n','q','T','R','y','f','n','Y','h','2','F','u','x','M','i','i','h','w','G','C','Z','v','i','C','a','X','U','C',
+ 'Y','8','d','h','R','x','V','n','v','G','i','D','a','U','p','U','a','e','b','F','w','P','d','X','n','K','h','9','H','r','b','g',
+ '2','f','m','X','k','m','q','6','n','5','b','G','H','d','R','9','D','U','c','r','Z','Y','W','S','Z','x','p','t','x','y','4','k',
+ 'j','F','U','t','C','i','e','i','b','p','e','4','C','z','h','3','3','5','Q','P','n','G','i','A','8','c','Q','z','B','a','V','4',
+ '2','B','2','z','u','u','3','i','L','w','y','g','K','H','k','y','2','B','b','e','5','e','4','e','U','4','z','n','P','z','a','c',
+ 'E','f','u','M','G','C','g','z','j','4','E','7','R','t','D','K','c','t','p','g','W','H','C','H','J','Q','J','c','F','5','4','W',
+ 'K','7','j','h','A','T','K','z','t','S','f','f','j','C','c','8','n','7','c','T','U','R','Q','E','7','A','W','Z','z','K','5','j',
+ '2','H','k','a','j','g','g','W','w','4','T','A','9','J','U','e','S','N','P','K','d','k','L','Q','G','Z','e','W','i','H','u','j',
+ 'C','z','4','E','2','v','5','L','u','9','Z','a','9','A','b','C','M','G','X','B','C','2','Y','Z','e','U','n','E','5','Y','n','y',
+ 'F','h','H','p','9','j','Y','F','V','w','Y','r','8','Q','f','C','J','4','T','t','z','Q','N','M','e','7','4','3','y','E','M','m',
+ 'b','S','c','h','w','a','X','E','d','E','z','t','h','9','k','p','A','k','K','H','x','q','K','Z','B','u','a','9','3','U','U','u',
+ '8','E','D','v','y','k','W','Y','X','k','r','R','D','X','n','Q','V','d','e','D','g','x','E','V','Y','w','k','m','K','r','H','D',
+ 't','2','6','N','U','g','3','t','B','9','t','u','M','D','z','Y','K','z','K','r','V','5','i','e','p','M','d','t','w','6','a','f',
+ 'f','W','k','L','i','g','M','V','M','Y','b','x','e','4','h','h','Y','g','w','Z','m','e','e','6','R','W','M','x','G','y','V','n',
+ '6','e','g','A','g','K','a','N','7','p','a','u','E','4','6','M','t','X','h','g','b','j','p','5','x','x','B','P','3','J','M','7',
+ 'j','Z','P','y','e','Q','Z','e','t','j','3','t','F','V','x','m','b','b','B','y','J','L','L','9','3','R','a','5','j','S','V','t',
+ 'e','2','6','m','H','w','r','w','r','6','Q','3','x','z','m','A','d','x','t','E','H','c','Z','x','c','P','j','r','u','U','W','k',
+ '6','g','X','g','n','f','n','7','H','M','B','t','v','6','v','x','g','M','f','e','2','w','m','y','d','H','S','q','c','K','U','H',
+ '2','X','h','d','p','Q','7','J','X','i','X','f','a','z','V','A','F','2','8','z','v','h','C','h','e','4','g','z','w','z','h','q',
+ 'p','6','B','n','m','8','h','W','U','7','z','h','T','6','J','f','4','Z','n','Q','W','z','2','N','4','t','g','7','u','4','X','2',
+ 'C','F','L','n','J','n','m','j','3','P','3','Y','e','J','R','A','H','e','R','D','z','7','u','X','Y','y','D','w','J','m','G','U',
+ 'P','H','5','S','d','a','F','F','Y','c','M','f','3','3','L','v','V','B','U','C','A','d','N','H','Q','h','7','8','4','r','p','G',
+ 'v','M','D','H','7','e','E','r','i','K','Q','i','B','D','M','Z','p','c','R','G','u','c','H','a','N','k','E','f','9','R','7','x',
+ '6','3','5','u','x','3','h','v','p','6','q','r','j','u','f','W','T','q','P','n','Y','L','B','6','U','w','P','2','T','W','R','g',
+ '2','3','3','e','N','V','a','j','b','e','4','T','u','J','u','u','F','B','D','G','H','x','x','k','5','G','e','3','4','B','m','L',
+ 'S','b','i','t','T','p','M','D','Z','A','A','i','r','J','p','4','H','U','A','G','y','d','Q','5','U','R','F','8','q','a','S','H',
+ 'n','5','z','9','g','3','u','R','H','m','G','m','b','p','c','L','Z','Y','u','m','i','K','A','Q','R','T','X','G','t','b','8','7',
+ '7','6','w','M','N','f','R','G','r','L','m','q','n','7','5','k','X','8','g','u','K','7','Y','w','K','q','U','e','W','A','r','i',
+ 'Z','a','p','q','L','5','P','u','n','t','y','G','x','C','N','X','q','P','r','U','v','A','r','r','q','e','f','c','z','M','7','N',
+ '6','a','z','Z','a','t','f','p','4','v','J','Y','j','h','M','D','t','k','A','B','p','Q','A','y','x','X','7','p','S','8','m','M',
+ 'y','K','B','A','5','2','7','b','y','R','K','q','A','u','3','J'};
+
+typedef struct {
+ uint32_t len;
+ const uint8_t *buf;
+ uint32_t initial_adler;
+ uint32_t expect_adler;
+ uint32_t initial_crc;
+ uint32_t expect_crc;
+} hash_test;
+
+static const hash_test hash_tests[] = {
+ {0, (const uint8_t *)"", 0x1, 0x1, 0x0, 0x0},
+ {1, (const uint8_t *)"", 0x1, 0x10001, 0x0, 0xd202ef8d},
+ {0, (const uint8_t *)"", 0xffffffff, 0x000e000e, 0xffffffff, 0xffffffff},
+ {1, (const uint8_t *)"a", 0x1, 0x00620062, 0x0, 0xe8b7be43},
+ {6, (const uint8_t *)"abacus", 0x1, 0x8400270, 0x0, 0xc3d7115b},
+ {7, (const uint8_t *)"backlog", 0x1, 0xb1f02d4, 0x0, 0x269205},
+ {8, (const uint8_t *)"campfire", 0x1, 0xea10348, 0x0, 0x22a515f8},
+ {5, (const uint8_t *)"delta", 0x1, 0x61a020b, 0x0, 0x9643fed9},
+ {10, (const uint8_t *)"executable", 0x1, 0x16fa0423, 0x0, 0xd68eda01},
+ {4, (const uint8_t *)"file", 0x1, 0x41401a1, 0x0, 0x8c9f3610},
+ {8, (const uint8_t *)"greatest", 0x1, 0xefa0360, 0x0, 0xc1abd6cd},
+ {5, (const uint8_t *)"hello", 0x1, 0x062c0215, 0x0, 0x3610a686},
+ {8, (const uint8_t *)"inverter", 0x1, 0xf6f0370, 0x0, 0xc9e962c9},
+ {6, (const uint8_t *)"jigsaw", 0x1, 0x8bd0286, 0x0, 0xce4e3f69},
+ {6, (const uint8_t *)"karate", 0x1, 0x8a50279, 0x0, 0x890be0e2},
+ {9, (const uint8_t *)"landscape", 0x1, 0x126a03ac, 0x0, 0xc4e0330b},
+ {7, (const uint8_t *)"machine", 0x1, 0xb5302d6, 0x0, 0x1505df84},
+ {9, (const uint8_t *)"nanometer", 0x1, 0x12d803ca, 0x0, 0xd4e19f39},
+ {8, (const uint8_t *)"oblivion", 0x1, 0xf220363, 0x0, 0xdae9de77},
+ {6, (const uint8_t *)"panama", 0x1, 0x8a1026f, 0x0, 0x66b8979c},
+ {5, (const uint8_t *)"quest", 0x1, 0x6970233, 0x0, 0x4317f817},
+ {8, (const uint8_t *)"resource", 0x1, 0xf8d0369, 0x0, 0xbc91f416},
+ {6, (const uint8_t *)"secret", 0x1, 0x8d10287, 0x0, 0x5ca2e8e5},
+ {4, (const uint8_t *)"test", 0x1, 0x045d01c1, 0x0, 0xd87f7e0c},
+ {8, (const uint8_t *)"ultimate", 0x1, 0xf8d0366, 0x0, 0x3fc79b0b},
+ {6, (const uint8_t *)"vector", 0x1, 0x8fb0294, 0x0, 0x1b6e485b},
+ {6, (const uint8_t *)"walrus", 0x1, 0x918029f, 0x0, 0xbe769b97},
+ {4, (const uint8_t *)"xeno", 0x1, 0x45e01bb, 0x0, 0xe7a06444},
+ {7, (const uint8_t *)"yelling", 0x1, 0xbfe02f5, 0x0, 0xfe3944e5},
+ {4, (const uint8_t *)"zero", 0x1, 0x046e01c1, 0x0, 0xabdef192},
+ {4, (const uint8_t *)"zlib", 0x1, 0x046401b2, 0x0, 0x73887d3a},
+ {20, (const uint8_t *)"4BJD7PocN1VqX0jXVpWB", 0x1, 0x3eef064d, 0x0, 0xd487a5a1},
+ {20, (const uint8_t *)"F1rPWI7XvDs6nAIRx41l", 0x1, 0x425d065f, 0x0, 0x61a0132e},
+ {20, (const uint8_t *)"ldhKlsVkPFOveXgkGtC2", 0x1, 0x4f1a073e, 0x0, 0xdf02f76},
+ {20, (const uint8_t *)"5KKnGOOrs8BvJ35iKTOS", 0x1, 0x42290650, 0x0, 0x579b2b0a},
+ {20, (const uint8_t *)"0l1tw7GOcem06Ddu7yn4", 0x1, 0x43fd0690, 0x0, 0xf7d16e2d},
+ {20, (const uint8_t *)"MCr47CjPIn9R1IvE1Tm5", 0x1, 0x3f770609, 0x0, 0x731788f5},
+ {20, (const uint8_t *)"UcixbzPKTIv0SvILHVdO", 0x1, 0x4c7c0703, 0x0, 0x7112bb11},
+ {20, (const uint8_t *)"dGnAyAhRQDsWw0ESou24", 0x1, 0x48ac06b7, 0x0, 0xf32a0dac},
+ {20, (const uint8_t *)"di0nvmY9UYMYDh0r45XT", 0x1, 0x489a0698, 0x0, 0x625437bb},
+ {20, (const uint8_t *)"2XKDwHfAhFsV0RhbqtvH", 0x1, 0x44a906e6, 0x0, 0x896930f9},
+ {20, (const uint8_t *)"ZhrANFIiIvRnqClIVyeD", 0x1, 0x4a29071c, 0x0, 0x8579a37},
+ {20, (const uint8_t *)"v7Q9ehzioTOVeDIZioT1", 0x1, 0x4a7706f9, 0x0, 0x632aa8e0},
+ {20, (const uint8_t *)"Yod5hEeKcYqyhfXbhxj2", 0x1, 0x4ce60769, 0x0, 0xc829af29},
+ {20, (const uint8_t *)"GehSWY2ay4uUKhehXYb0", 0x1, 0x48ae06e5, 0x0, 0x1b08b7e8},
+ {20, (const uint8_t *)"kwytJmq6UqpflV8Y8GoE", 0x1, 0x51d60750, 0x0, 0x4e33b192},
+ {20, (const uint8_t *)"70684206568419061514", 0x1, 0x2b100414, 0x0, 0x59a179f0},
+ {20, (const uint8_t *)"42015093765128581010", 0x1, 0x2a550405, 0x0, 0xcd1013d7},
+ {20, (const uint8_t *)"88214814356148806939", 0x1, 0x2b450423, 0x0, 0xab927546},
+ {20, (const uint8_t *)"43472694284527343838", 0x1, 0x2b460421, 0x0, 0x11f3b20c},
+ {20, (const uint8_t *)"49769333513942933689", 0x1, 0x2bc1042b, 0x0, 0xd562d4ca},
+ {20, (const uint8_t *)"54979784887993251199", 0x1, 0x2ccd043d, 0x0, 0x233395f7},
+ {20, (const uint8_t *)"58360544869206793220", 0x1, 0x2b68041a, 0x0, 0x2d167fd5},
+ {20, (const uint8_t *)"27347953487840714234", 0x1, 0x2b84041d, 0x0, 0x8b5108ba},
+ {20, (const uint8_t *)"07650690295365319082", 0x1, 0x2afa0417, 0x0, 0xc46b3cd8},
+ {20, (const uint8_t *)"42655507906821911703", 0x1, 0x2aff0412, 0x0, 0xc10b2662},
+ {20, (const uint8_t *)"29977409200786225655", 0x1, 0x2b8d0420, 0x0, 0xc9a0f9d2},
+ {20, (const uint8_t *)"85181542907229116674", 0x1, 0x2b140419, 0x0, 0x9341357b},
+ {20, (const uint8_t *)"87963594337989416799", 0x1, 0x2c8e043f, 0x0, 0xf0424937},
+ {20, (const uint8_t *)"21395988329504168551", 0x1, 0x2b68041f, 0x0, 0xd7c4c31f},
+ {20, (const uint8_t *)"51991013580943379423", 0x1, 0x2af10417, 0x0, 0xf11edcc4},
+ {30, (const uint8_t *)"*]+@!);({_$;}[_},?{?;(_?,=-][@", 0x1, 0x7c9d0841, 0x0, 0x40795df4},
+ {30, (const uint8_t *)"_@:_).&(#.[:[{[:)$++-($_;@[)}+", 0x1, 0x71060751, 0x0, 0xdd61a631},
+ {30, (const uint8_t *)"&[!,[$_==}+.]@!;*(+},[;:)$;)-@", 0x1, 0x7095070a, 0x0, 0xca907a99},
+ {30, (const uint8_t *)"]{.[.+?+[[=;[?}_#&;[=)__$$:+=_", 0x1, 0x82530815, 0x0, 0xf652deac},
+ {30, (const uint8_t *)"-%.)=/[@].:.(:,()$;=%@-$?]{%+%", 0x1, 0x61250661, 0x0, 0xaf39a5a9},
+ {30, (const uint8_t *)"+]#$(@&.=:,*];/.!]%/{:){:@(;)$", 0x1, 0x642006a3, 0x0, 0x6bebb4cf},
+ {30, (const uint8_t *)")-._.:?[&:.=+}(*$/=!.${;(=$@!}", 0x1, 0x674206cb, 0x0, 0x76430bac},
+ {30, (const uint8_t *)":(_*&%/[[}+,?#$&*+#[([*-/#;%(]", 0x1, 0x67670680, 0x0, 0x6c80c388},
+ {30, (const uint8_t *)"{[#-;:$/{)(+[}#]/{&!%(@)%:@-$:", 0x1, 0x7547070f, 0x0, 0xd54d977d},
+ {30, (const uint8_t *)"_{$*,}(&,@.)):=!/%(&(,,-?$}}}!", 0x1, 0x69ea06ee, 0x0, 0xe3966ad5},
+ {100, (const uint8_t *)"e$98KNzqaV)Y:2X?]77].{gKRD4G5{mHZk,Z)SpU%L3FSgv!Wb8MLAFdi{+fp)c,@8m6v)yXg@]HBDFk?.4&}g5_udE*JHCiH=aL", 0x1, 0x1b01e92, 0x0, 0xe7c71db9},
+ {100, (const uint8_t *)"r*Fd}ef+5RJQ;+W=4jTR9)R*p!B;]Ed7tkrLi;88U7g@3v!5pk2X6D)vt,.@N8c]@yyEcKi[vwUu@.Ppm@C6%Mv*3Nw}Y,58_aH)", 0x1, 0xfbdb1e96, 0x0, 0xeaa52777},
+ {100, (const uint8_t *)"h{bcmdC+a;t+Cf{6Y_dFq-{X4Yu&7uNfVDh?q&_u.UWJU],-GiH7ADzb7-V.Q%4=+v!$L9W+T=bP]$_:]Vyg}A.ygD.r;h-D]m%&", 0x1, 0x47a61ec8, 0x0, 0xcd472048},
+ {5552, (const uint8_t *)long_string, 0x1, 0x8b81718f, 0x0, 0x426fa73b},
+ {6, (const uint8_t *)"abacus", 0x1, 0x8400270, 0x7a30360d, 0xf8655a84},
+ {1, (const uint8_t *)"", 0x6fd767ee, 0xd7c567ee, 0x6fd767ee, 0x95dff795},
+ {1, (const uint8_t *)"a", 0xefeb7589, 0x65e475ea, 0x0, 0xe8b7be43},
+ {6, (const uint8_t *)"abacus", 0x61cf7e6b, 0x60b880da, 0x0, 0xc3d7115b},
+ {7, (const uint8_t *)"backlog", 0x1, 0xb1f02d4, 0x6fd767ee, 0x1ed834b1},
+ {7, (const uint8_t *)"backlog", 0xdc712e2, 0x9d0d15b5, 0xefeb7589, 0x975f06f6},
+ {8, (const uint8_t *)"campfire", 0xad23c7fd, 0xfbfecb44, 0x0, 0x22a515f8},
+ {8, (const uint8_t *)"campfire", 0x1, 0xea10348, 0xefeb7589, 0x686cfca},
+ {5, (const uint8_t *)"delta", 0x85cb2317, 0x3b622521, 0x61cf7e6b, 0x1554e4b1},
+ {10, (const uint8_t *)"executable", 0x9eed31b0, 0xa6db35d2, 0xdc712e2, 0x761b4254},
+ {4, (const uint8_t *)"file", 0xb94f34ca, 0x9096366a, 0xad23c7fd, 0x7abdd09b},
+ {8, (const uint8_t *)"greatest", 0xab058a2, 0xded05c01, 0x85cb2317, 0x4ba91c6b},
+ {8, (const uint8_t *)"inverter", 0x5bff2b7a, 0xc7452ee9, 0x9eed31b0, 0xd5e78ba5},
+ {6, (const uint8_t *)"jigsaw", 0x605c9a5f, 0x7899ce4, 0xb94f34ca, 0x23649109},
+ {6, (const uint8_t *)"karate", 0x51bdeea5, 0xf285f11d, 0xab058a2, 0xc5591f41},
+ {9, (const uint8_t *)"landscape", 0x85c21c79, 0x98732024, 0x5bff2b7a, 0xf10eb644},
+ {7, (const uint8_t *)"machine", 0x97216f56, 0xadf4722b, 0x605c9a5f, 0xbaa0a636},
+ {9, (const uint8_t *)"nanometer", 0x18444af2, 0xcdb34ebb, 0x51bdeea5, 0x6af89afb},
+ {8, (const uint8_t *)"oblivion", 0xbe6ce359, 0xe8b7e6bb, 0x85c21c79, 0xecae222b},
+ {6, (const uint8_t *)"panama", 0x843071f1, 0x389e745f, 0x97216f56, 0x47dffac4},
+ {5, (const uint8_t *)"quest", 0xf2480c60, 0x36c90e92, 0x18444af2, 0x70c2fe36},
+ {8, (const uint8_t *)"resource", 0x2d2feb3d, 0x9705eea5, 0xbe6ce359, 0x1471d925},
+ {6, (const uint8_t *)"secret", 0x7490310a, 0xa3a63390, 0x843071f1, 0x50c9a0db},
+ {8, (const uint8_t *)"ultimate", 0x97d247d4, 0xe6154b39, 0xf2480c60, 0xf973daf8},
+ {6, (const uint8_t *)"vector", 0x93cf7599, 0x5e87782c, 0x2d2feb3d, 0x344ac03d},
+ {6, (const uint8_t *)"walrus", 0x73c84278, 0xbc84516, 0x7490310a, 0x6d1408ef},
+ {4, (const uint8_t *)"xeno", 0x228a87d1, 0x4646898b, 0x97d247d4, 0xe62670b5},
+ {7, (const uint8_t *)"yelling", 0xa7a048d0, 0xb1654bc4, 0x93cf7599, 0x1b36da38},
+ {4, (const uint8_t *)"zlib", 0x1f0ded40, 0xd89aeef1, 0x73c84278, 0x6432d127},
+ {20, (const uint8_t *)"4BJD7PocN1VqX0jXVpWB", 0xa804a62f, 0xe34eac7b, 0x228a87d1, 0x997107d0},
+ {20, (const uint8_t *)"F1rPWI7XvDs6nAIRx41l", 0x508fae6a, 0x33f2b4c8, 0xa7a048d0, 0xdc567274},
+ {20, (const uint8_t *)"ldhKlsVkPFOveXgkGtC2", 0xe5adaf4f, 0xe7b1b68c, 0x1f0ded40, 0xdcc63870},
+ {20, (const uint8_t *)"5KKnGOOrs8BvJ35iKTOS", 0x67136a40, 0xf6a0708f, 0xa804a62f, 0x6926cffd},
+ {20, (const uint8_t *)"0l1tw7GOcem06Ddu7yn4", 0xb00c4a10, 0xbd8f509f, 0x508fae6a, 0xb52b38bc},
+ {20, (const uint8_t *)"MCr47CjPIn9R1IvE1Tm5", 0x2e0c84b5, 0xcc298abd, 0xe5adaf4f, 0xf83b8178},
+ {20, (const uint8_t *)"UcixbzPKTIv0SvILHVdO", 0x81238d44, 0xd7809446, 0x67136a40, 0xc5213070},
+ {20, (const uint8_t *)"dGnAyAhRQDsWw0ESou24", 0xf853aa92, 0x9525b148, 0xb00c4a10, 0xbc7648b0},
+ {20, (const uint8_t *)"di0nvmY9UYMYDh0r45XT", 0x5a692325, 0x620029bc, 0x2e0c84b5, 0xd8123a72},
+ {20, (const uint8_t *)"2XKDwHfAhFsV0RhbqtvH", 0x3275b9f, 0x70916284, 0x81238d44, 0xd5ac5620},
+ {20, (const uint8_t *)"ZhrANFIiIvRnqClIVyeD", 0x38371feb, 0xd52706, 0xf853aa92, 0xceae099d},
+ {20, (const uint8_t *)"v7Q9ehzioTOVeDIZioT1", 0xafc8bf62, 0xeeb4c65a, 0x5a692325, 0xb07d2b24},
+ {20, (const uint8_t *)"Yod5hEeKcYqyhfXbhxj2", 0x9b07db73, 0xde3e2db, 0x3275b9f, 0x24ce91df},
+ {20, (const uint8_t *)"GehSWY2ay4uUKhehXYb0", 0xe75b214, 0x4171b8f8, 0x38371feb, 0x707b3b30},
+ {20, (const uint8_t *)"kwytJmq6UqpflV8Y8GoE", 0x72d0fe6f, 0xa66a05cd, 0xafc8bf62, 0x16abc6a9},
+ {20, (const uint8_t *)"70684206568419061514", 0xf857a4b1, 0x1f9a8c4, 0x9b07db73, 0xae1fb7b7},
+ {20, (const uint8_t *)"42015093765128581010", 0x54b8e14, 0x49c19218, 0xe75b214, 0xd4eecd2d},
+ {20, (const uint8_t *)"88214814356148806939", 0xd6aa5616, 0xbbfc5a38, 0x72d0fe6f, 0x4660ec7},
+ {20, (const uint8_t *)"43472694284527343838", 0x11e63098, 0x93434b8, 0xf857a4b1, 0xfd8afdf7},
+ {20, (const uint8_t *)"49769333513942933689", 0xbe92385, 0xfe1827af, 0x54b8e14, 0xc6d1b5f2},
+ {20, (const uint8_t *)"54979784887993251199", 0x49511de0, 0xcba8221c, 0xd6aa5616, 0x32476461},
+ {20, (const uint8_t *)"58360544869206793220", 0x3db13bc1, 0x14643fda, 0x11e63098, 0xd917cf1a},
+ {20, (const uint8_t *)"27347953487840714234", 0xbb899bea, 0x1604a006, 0xbe92385, 0x4ad14a12},
+ {20, (const uint8_t *)"07650690295365319082", 0xf6cd9436, 0xb69f984c, 0x49511de0, 0xe37b5c6c},
+ {20, (const uint8_t *)"42655507906821911703", 0x9109e6c3, 0xc43eead4, 0x3db13bc1, 0x7cc497f1},
+ {20, (const uint8_t *)"29977409200786225655", 0x75770fc, 0x707751b, 0xbb899bea, 0x99781bb2},
+ {20, (const uint8_t *)"85181542907229116674", 0x69b1d19b, 0xf5bdd5b3, 0xf6cd9436, 0x132256a1},
+ {20, (const uint8_t *)"87963594337989416799", 0xc6132975, 0x2fed2db3, 0x9109e6c3, 0xbfdb2c83},
+ {20, (const uint8_t *)"21395988329504168551", 0xd58cb00c, 0xc2a2b42a, 0x75770fc, 0x8d9d1e81},
+ {20, (const uint8_t *)"51991013580943379423", 0xb63b8caa, 0xdf0590c0, 0x69b1d19b, 0x7b6d4404},
+ {30, (const uint8_t *)"*]+@!);({_$;}[_},?{?;(_?,=-][@", 0x8a45a2b8, 0x1980aaf8, 0xc6132975, 0x8619f010},
+ {30, (const uint8_t *)"_@:_).&(#.[:[{[:)$++-($_;@[)}+", 0xcbe95b78, 0xf58662c8, 0xd58cb00c, 0x15746ac3},
+ {30, (const uint8_t *)"&[!,[$_==}+.]@!;*(+},[;:)$;)-@", 0x4ef8a54b, 0x1f65ac54, 0xb63b8caa, 0xaccf812f},
+ {30, (const uint8_t *)"]{.[.+?+[[=;[?}_#&;[=)__$$:+=_", 0x76ad267a, 0x7b792e8e, 0x8a45a2b8, 0x78af45de},
+ {30, (const uint8_t *)"-%.)=/[@].:.(:,()$;=%@-$?]{%+%", 0x569e613c, 0x1d61679c, 0xcbe95b78, 0x25b06b59},
+ {30, (const uint8_t *)"+]#$(@&.=:,*];/.!]%/{:){:@(;)$", 0x36aa61da, 0x12ec687c, 0x4ef8a54b, 0x4ba0d08f},
+ {30, (const uint8_t *)")-._.:?[&:.=+}(*$/=!.${;(=$@!}", 0xf67222df, 0x740329a9, 0x76ad267a, 0xe26b6aac},
+ {30, (const uint8_t *)":(_*&%/[[}+,?#$&*+#[([*-/#;%(]", 0x74b34fd3, 0x374c5652, 0x569e613c, 0x7e2b0a66},
+ {30, (const uint8_t *)"{[#-;:$/{)(+[}#]/{&!%(@)%:@-$:", 0x351fd770, 0xeadfde7e, 0x36aa61da, 0xb3430dc7},
+ {30, (const uint8_t *)"_{$*,}(&,@.)):=!/%(&(,,-?$}}}!", 0xc45aef77, 0x3fcbf664, 0xf67222df, 0x626c17a},
+ {100, (const uint8_t *)"e$98KNzqaV)Y:2X?]77].{gKRD4G5{mHZk,Z)SpU%L3FSgv!Wb8MLAFdi{+fp)c,@8m6v)yXg@]HBDFk?.4&}g5_udE*JHCiH=aL", 0xd034ea71, 0x6b080911, 0x74b34fd3, 0xccf98060},
+ {100, (const uint8_t *)"r*Fd}ef+5RJQ;+W=4jTR9)R*p!B;]Ed7tkrLi;88U7g@3v!5pk2X6D)vt,.@N8c]@yyEcKi[vwUu@.Ppm@C6%Mv*3Nw}Y,58_aH)", 0xdeadc0de, 0x355fdf73, 0x351fd770, 0xd8b95312},
+ {100, (const uint8_t *)"h{bcmdC+a;t+Cf{6Y_dFq-{X4Yu&7uNfVDh?q&_u.UWJU],-GiH7ADzb7-V.Q%4=+v!$L9W+T=bP]$_:]Vyg}A.ygD.r;h-D]m%&", 0xba5eba11, 0xb48bd8d8, 0xc45aef77, 0xbb1c9912},
+ {600, (const uint8_t *)
+ "h{bcmdC+a;t+Cf{6Y_dFq-{X4Yu&7uNfVDh?q&_u.UWJU],-GiH7ADzb7-V.Q%4=+v!$L9W+T=bP]$_:]Vyg}A.ygD.r;h-D]m%&"
+ "h{bcmdC+a;t+Cf{6Y_dFq-{X4Yu&7uNfVDh?q&_u.UWJU],-GiH7ADzb7-V.Q%4=+v!$L9W+T=bP]$_:]Vyg}A.ygD.r;h-D]m%&"
+ "h{bcmdC+a;t+Cf{6Y_dFq-{X4Yu&7uNfVDh?q&_u.UWJU],-GiH7ADzb7-V.Q%4=+v!$L9W+T=bP]$_:]Vyg}A.ygD.r;h-D]m%&"
+ "h{bcmdC+a;t+Cf{6Y_dFq-{X4Yu&7uNfVDh?q&_u.UWJU],-GiH7ADzb7-V.Q%4=+v!$L9W+T=bP]$_:]Vyg}A.ygD.r;h-D]m%&"
+ "h{bcmdC+a;t+Cf{6Y_dFq-{X4Yu&7uNfVDh?q&_u.UWJU],-GiH7ADzb7-V.Q%4=+v!$L9W+T=bP]$_:]Vyg}A.ygD.r;h-D]m%&"
+ "h{bcmdC+a;t+Cf{6Y_dFq-{X4Yu&7uNfVDh?q&_u.UWJU],-GiH7ADzb7-V.Q%4=+v!$L9W+T=bP]$_:]Vyg}A.ygD.r;h-D]m%&", 0x0, 0xc3ab8aa, 0xc45aef77, 0x888afa5b},
+ {5552, (const uint8_t *)long_string, 0x7712aa45, 0x7dc51be2, 0x0, 0x426fa73b},
+ {32768, big_test, 0x0, 0xbfcdc3b1, 0x0, 0x217726b2},
+ {16384, big_test, 0x0, 0x186ae1d1, 0x0, 0xe81722f0},
+ {118960+512, big_test, 0x0, 0xf0d560c0, 0x0, 0xf0d2c66f},
+ {615078, big_test, 0x0, 0xd153ca93, 0x0, 0x6a023677},
+ {615142, big_test, 0x0, 0x68cafbf3, 0x0, 0x8a1b2fc5},
+ {615270, big_test, 0x0, 0x343e28c2, 0x0, 0xaf836355},
+ {615302, big_test, 0x0, 0x34883772, 0x0, 0x42e83c6c},
+ {615318, big_test, 0x0, 0xf5ad404a, 0x0, 0x563bcb26},
+ {615326, big_test, 0x0, 0x0d964516, 0x0, 0xd39dea79},
+ {615330, big_test, 0x0, 0x28334794, 0x0, 0xec355488},
+ {615334, big_test, 0x0, 0x4cf04a22, 0x0, 0x391ab77c},
+ {615335, big_test, 0x0, 0x97b84ac8, 0x0, 0xb43dcef0},
+ {615336, big_test, 0x0, 0xe3274b6f, 0x0, 0x27b91614},
+};
+
+#endif /* HASH_TEST_STRINGS_P_H */
diff --git a/neozip/test/infcover.c b/neozip/test/infcover.c
new file mode 100644
index 0000000000..582feaebd6
--- /dev/null
+++ b/neozip/test/infcover.c
@@ -0,0 +1,683 @@
+/* infcover.c -- test zlib's inflate routines with full code coverage
+ * Copyright (C) 2011, 2016 Mark Adler
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+/* to use, do: ./configure --cover && make cover */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#undef NDEBUG
+#include <assert.h>
+#include <inttypes.h>
+
+/* get definition of internal structure so we can mess with it (see pull()),
+ and so we can call inflate_trees() (see cover5()) */
+#include "zbuild.h"
+#include "zutil.h"
+#include "inftrees.h"
+#include "inflate.h"
+
+/* -- memory tracking routines -- */
+
+/*
+ These memory tracking routines are provided to zlib and track all of zlib's
+ allocations and deallocations, check for LIFO operations, keep a current
+ and high water mark of total bytes requested, optionally set a limit on the
+ total memory that can be allocated, and when done check for memory leaks.
+
+ They are used as follows:
+
+ PREFIX3(stream) strm;
+ mem_setup(&strm) initializes the memory tracking and sets the
+ zalloc, zfree, and opaque members of strm to use
+ memory tracking for all zlib operations on strm
+ mem_limit(&strm, limit) sets a limit on the total bytes requested -- a
+ request that exceeds this limit will result in an
+ allocation failure (returns NULL) -- setting the
+ limit to zero means no limit, which is the default
+ after mem_setup()
+ mem_used(&strm, "msg") prints to stderr "msg" and the total bytes used
+ mem_high(&strm, "msg") prints to stderr "msg" and the high water mark
+ mem_done(&strm, "msg") ends memory tracking, releases all allocations
+ for the tracking as well as leaked zlib blocks, if
+ any. If there was anything unusual, such as leaked
+ blocks, non-FIFO frees, or frees of addresses not
+ allocated, then "msg" and information about the
+ problem is printed to stderr. If everything is
+ normal, nothing is printed. mem_done resets the
+ strm members to NULL to use the default memory
+ allocation routines on the next zlib initialization
+ using strm.
+ */
+
+/* these items are strung together in a linked list, one for each allocation */
+struct mem_item {
+ void *ptr; /* pointer to allocated memory */
+ size_t size; /* requested size of allocation */
+ struct mem_item *next; /* pointer to next item in list, or NULL */
+};
+
+/* this structure is at the root of the linked list, and tracks statistics */
+struct mem_zone {
+ struct mem_item *first; /* pointer to first item in list, or NULL */
+ size_t total, highwater; /* total allocations, and largest total */
+ size_t limit; /* memory allocation limit, or 0 if no limit */
+ int notlifo, rogue; /* counts of non-LIFO frees and rogue frees */
+};
+
+/* memory allocation routine to pass to zlib */
+static void *mem_alloc(void *mem, unsigned count, unsigned size) {
+ void *ptr;
+ struct mem_item *item;
+ struct mem_zone *zone = mem;
+ size_t len = count * (size_t)size;
+
+ /* induced allocation failure */
+ if (zone == NULL || (zone->limit && zone->total + len > zone->limit))
+ return NULL;
+
+ /* perform allocation using the standard library, fill memory with a
+ non-zero value to make sure that the code isn't depending on zeros */
+ ptr = malloc(len);
+ if (ptr == NULL)
+ return NULL;
+ memset(ptr, 0xa5, len);
+
+ /* create a new item for the list */
+ item = malloc(sizeof(struct mem_item));
+ if (item == NULL) {
+ free(ptr);
+ return NULL;
+ }
+ item->ptr = ptr;
+ item->size = len;
+
+ /* insert item at the beginning of the list */
+ item->next = zone->first;
+ zone->first = item;
+
+ /* update the statistics */
+ zone->total += item->size;
+ if (zone->total > zone->highwater)
+ zone->highwater = zone->total;
+
+ /* return the allocated memory */
+ return ptr;
+}
+
+/* memory free routine to pass to zlib */
+static void mem_free(void *mem, void *ptr) {
+ struct mem_item *item, *next;
+ struct mem_zone *zone = mem;
+
+ /* if no zone, just do a free */
+ if (zone == NULL) {
+ free(ptr);
+ return;
+ }
+
+ /* point next to the item that matches ptr, or NULL if not found -- remove
+ the item from the linked list if found */
+ next = zone->first;
+ if (next) {
+ if (next->ptr == ptr)
+ zone->first = next->next; /* first one is it, remove from list */
+ else {
+ do { /* search the linked list */
+ item = next;
+ next = item->next;
+ } while (next != NULL && next->ptr != ptr);
+ if (next) { /* if found, remove from linked list */
+ item->next = next->next;
+ zone->notlifo++; /* not a LIFO free */
+ }
+
+ }
+ }
+
+ /* if found, update the statistics and free the item */
+ if (next) {
+ zone->total -= next->size;
+ free(next);
+ }
+
+ /* if not found, update the rogue count */
+ else
+ zone->rogue++;
+
+ /* in any case, do the requested free with the standard library function */
+ free(ptr);
+}
+
+/* set up a controlled memory allocation space for monitoring, set the stream
+ parameters to the controlled routines, with opaque pointing to the space */
+static void mem_setup(PREFIX3(stream) *strm) {
+ struct mem_zone *zone;
+
+ zone = malloc(sizeof(struct mem_zone));
+ assert(zone != NULL);
+ zone->first = NULL;
+ zone->total = 0;
+ zone->highwater = 0;
+ zone->limit = 0;
+ zone->notlifo = 0;
+ zone->rogue = 0;
+ strm->opaque = zone;
+ strm->zalloc = mem_alloc;
+ strm->zfree = mem_free;
+}
+
+/* set a limit on the total memory allocation, or 0 to remove the limit */
+static void mem_limit(PREFIX3(stream) *strm, size_t limit) {
+ struct mem_zone *zone = strm->opaque;
+
+ zone->limit = limit;
+}
+
+/* show the current total requested allocations in bytes */
+static void mem_used(PREFIX3(stream) *strm, char *prefix) {
+ struct mem_zone *zone = strm->opaque;
+
+ fprintf(stderr, "%s: %" PRIu64 " allocated\n", prefix, (uint64_t)zone->total);
+}
+
+/* show the high water allocation in bytes */
+static void mem_high(PREFIX3(stream) *strm, char *prefix) {
+ struct mem_zone *zone = strm->opaque;
+
+ fprintf(stderr, "%s: %" PRIu64 " high water mark\n", prefix, (uint64_t)zone->highwater);
+}
+
+/* release the memory allocation zone -- if there are any surprises, notify */
+static void mem_done(PREFIX3(stream) *strm, char *prefix) {
+ int count = 0;
+ struct mem_item *item, *next;
+ struct mem_zone *zone = strm->opaque;
+
+ /* show high water mark */
+ mem_high(strm, prefix);
+
+ /* free leftover allocations and item structures, if any */
+ item = zone->first;
+ while (item != NULL) {
+ free(item->ptr);
+ next = item->next;
+ free(item);
+ item = next;
+ count++;
+ }
+
+ /* issue alerts about anything unexpected */
+ if (count || zone->total)
+ fprintf(stderr, "** %s: %" PRIu64 " bytes in %d blocks not freed\n",
+ prefix, (uint64_t)zone->total, count);
+ if (zone->notlifo)
+ fprintf(stderr, "** %s: %d frees not LIFO\n", prefix, zone->notlifo);
+ if (zone->rogue)
+ fprintf(stderr, "** %s: %d frees not recognized\n",
+ prefix, zone->rogue);
+
+ /* free the zone and delete from the stream */
+ free(zone);
+ strm->opaque = NULL;
+ strm->zalloc = NULL;
+ strm->zfree = NULL;
+}
+
+/* -- inflate test routines -- */
+
+/* Decode a hexadecimal string, set *len to length, in[] to the bytes. This
+ decodes liberally, in that hex digits can be adjacent, in which case two in
+ a row writes a byte. Or they can be delimited by any non-hex character,
+ where the delimiters are ignored except when a single hex digit is followed
+ by a delimiter, where that single digit writes a byte. The returned data is
+ allocated and must eventually be freed. NULL is returned if out of memory.
+ If the length is not needed, then len can be NULL. */
+static unsigned char *h2b(const char *hex, unsigned *len) {
+ unsigned char *in, *re;
+ unsigned next, val;
+ size_t inlen;
+
+ inlen = (strlen(hex) + 1) >> 1;
+ assert(inlen != 0); /* tell static analyzer we won't call malloc(0) */
+ in = malloc(inlen);
+ if (in == NULL)
+ return NULL;
+ next = 0;
+ val = 1;
+ do {
+ if (*hex >= '0' && *hex <= '9')
+ val = (val << 4) + *hex - '0';
+ else if (*hex >= 'A' && *hex <= 'F')
+ val = (val << 4) + *hex - 'A' + 10;
+ else if (*hex >= 'a' && *hex <= 'f')
+ val = (val << 4) + *hex - 'a' + 10;
+ else if (val != 1 && val < 32) /* one digit followed by delimiter */
+ val += 240; /* make it look like two digits */
+ if (val > 255) { /* have two digits */
+ in[next++] = val & 0xff; /* save the decoded byte */
+ val = 1; /* start over */
+ }
+ } while (*hex++); /* go through the loop with the terminating null */
+ if (len != NULL)
+ *len = next;
+ assert(next != 0); /* tell static analyzer we won't call realloc(in, 0) */
+ re = realloc(in, next);
+ return re == NULL ? in : re;
+}
+
+/* generic inflate() run, where hex is the hexadecimal input data, what is the
+ text to include in an error message, step is how much input data to feed
+ inflate() on each call, or zero to feed it all, win is the window bits
+ parameter to inflateInit2(), len is the size of the output buffer, and err
+ is the error code expected from the first inflate() call (the second
+ inflate() call is expected to return Z_STREAM_END). If win is 47, then
+ header information is collected with inflateGetHeader(). If a zlib stream
+ is looking for a dictionary, then an empty dictionary is provided.
+ inflate() is run until all of the input data is consumed. */
+static void inf(char *hex, char *what, unsigned step, int win, unsigned len, int err) {
+ int ret;
+ unsigned have;
+ unsigned char *in, *out;
+ PREFIX3(stream) strm, copy;
+ PREFIX(gz_header) head;
+
+ mem_setup(&strm);
+ strm.avail_in = 0;
+ strm.next_in = NULL;
+ ret = PREFIX(inflateInit2)(&strm, win);
+ if (ret != Z_OK) {
+ mem_done(&strm, what);
+ return;
+ }
+ out = malloc(len); assert(out != NULL);
+ if (win == 47) {
+ head.extra = out;
+ head.extra_max = len;
+ head.name = out;
+ head.name_max = len;
+ head.comment = out;
+ head.comm_max = len;
+ ret = PREFIX(inflateGetHeader)(&strm, &head);
+ assert(ret == Z_OK);
+ }
+ in = h2b(hex, &have); assert(in != NULL);
+ if (step == 0 || step > have)
+ step = have;
+ strm.avail_in = step;
+ have -= step;
+ strm.next_in = in;
+ do {
+ strm.avail_out = len;
+ strm.next_out = out;
+ ret = PREFIX(inflate)(&strm, Z_NO_FLUSH);
+ assert(err == 9 || ret == err);
+ if (ret != Z_OK && ret != Z_BUF_ERROR && ret != Z_NEED_DICT)
+ break;
+ if (ret == Z_NEED_DICT) {
+ ret = PREFIX(inflateSetDictionary)(&strm, in, 1);
+ assert(ret == Z_DATA_ERROR);
+ mem_limit(&strm, 0);
+ ((struct inflate_state *)strm.state)->mode = DICT;
+ ret = PREFIX(inflateSetDictionary)(&strm, out, 0);
+ assert(ret == Z_OK);
+ ret = PREFIX(inflate)(&strm, Z_NO_FLUSH);
+ assert(ret == Z_BUF_ERROR);
+ }
+ ret = PREFIX(inflateCopy)(&copy, &strm);
+ assert(ret == Z_OK);
+ ret = PREFIX(inflateEnd)(&copy); assert(ret == Z_OK);
+ err = 9; /* don't care next time around */
+ have += strm.avail_in;
+ strm.avail_in = MIN(step, have);
+ have -= strm.avail_in;
+ } while (strm.avail_in);
+ free(in);
+ free(out);
+ ret = PREFIX(inflateReset2)(&strm, -8); assert(ret == Z_OK);
+ ret = PREFIX(inflateEnd)(&strm); assert(ret == Z_OK);
+ mem_done(&strm, what);
+ Z_UNUSED(err);
+}
+
+/* cover all of the lines in inflate.c up to inflate() */
+static void cover_support(void) {
+ int ret;
+ PREFIX3(stream) strm;
+
+ mem_setup(&strm);
+ strm.avail_in = 0;
+ strm.next_in = NULL;
+ ret = PREFIX(inflateInit)(&strm); assert(ret == Z_OK);
+ mem_used(&strm, "inflate init");
+ ret = PREFIX(inflatePrime)(&strm, 5, 31); assert(ret == Z_OK);
+ ret = PREFIX(inflatePrime)(&strm, -1, 0); assert(ret == Z_OK);
+ ret = PREFIX(inflateSetDictionary)(&strm, NULL, 0);
+ assert(ret == Z_STREAM_ERROR);
+ ret = PREFIX(inflateEnd)(&strm); assert(ret == Z_OK);
+ mem_done(&strm, "prime");
+
+ inf("63 0", "force window allocation", 0, -15, 1, Z_OK);
+ inf("63 18 5", "force window replacement", 0, -8, 259, Z_OK);
+ inf("63 18 68 30 d0 0 0", "force split window update", 4, -8, 259, Z_OK);
+ inf("3 0", "use fixed blocks", 0, -15, 1, Z_STREAM_END);
+ inf("", "bad window size", 0, 1, 0, Z_STREAM_ERROR);
+
+#ifdef ZLIB_COMPAT
+ mem_setup(&strm);
+ strm.avail_in = 0;
+ strm.next_in = NULL;
+ ret = PREFIX(inflateInit_)(&strm, &PREFIX2(VERSION)[1], (int)sizeof(PREFIX3(stream)));
+ assert(ret == Z_VERSION_ERROR);
+ mem_done(&strm, "wrong version");
+#endif
+
+ strm.avail_in = 0;
+ strm.next_in = NULL;
+ ret = PREFIX(inflateInit)(&strm); assert(ret == Z_OK);
+ ret = PREFIX(inflateEnd)(&strm); assert(ret == Z_OK);
+ fputs("inflate built-in memory routines\n", stderr);
+ Z_UNUSED(ret);
+}
+
+/* cover all inflate() header and trailer cases and code after inflate() */
+static void cover_wrap(void) {
+ int ret;
+ PREFIX3(stream) strm, copy;
+ unsigned char dict[257];
+
+ ret = PREFIX(inflate)(NULL, 0); assert(ret == Z_STREAM_ERROR);
+ ret = PREFIX(inflateEnd)(NULL); assert(ret == Z_STREAM_ERROR);
+ ret = PREFIX(inflateCopy)(NULL, NULL); assert(ret == Z_STREAM_ERROR);
+ fputs("inflate bad parameters\n", stderr);
+
+ inf("1f 8b 0 0", "bad gzip method", 0, 31, 0, Z_DATA_ERROR);
+ inf("1f 8b 8 80", "bad gzip flags", 0, 31, 0, Z_DATA_ERROR);
+ inf("77 85", "bad zlib method", 0, 15, 0, Z_DATA_ERROR);
+ inf("8 99", "set window size from header", 0, 0, 0, Z_OK);
+ inf("78 9c", "bad zlib window size", 0, 8, 0, Z_DATA_ERROR);
+ inf("78 9c 63 0 0 0 1 0 1", "check adler32", 0, 15, 1, Z_STREAM_END);
+ inf("1f 8b 8 1e 0 0 0 0 0 0 1 0 0 0 0 0 0", "bad header crc", 0, 47, 1,
+ Z_DATA_ERROR);
+ inf("1f 8b 8 2 0 0 0 0 0 0 1d 26 3 0 0 0 0 0 0 0 0 0", "check gzip length",
+ 0, 47, 0, Z_STREAM_END);
+ inf("78 90", "bad zlib header check", 0, 47, 0, Z_DATA_ERROR);
+ inf("8 b8 0 0 0 1", "need dictionary", 0, 8, 0, Z_NEED_DICT);
+ inf("78 9c 63 0", "compute adler32", 0, 15, 1, Z_OK);
+
+ mem_setup(&strm);
+ strm.avail_in = 0;
+ strm.next_in = NULL;
+ ret = PREFIX(inflateInit2)(&strm, -8);
+ strm.avail_in = 2;
+ strm.next_in = (void *)"\x63";
+ strm.avail_out = 1;
+ strm.next_out = (void *)&ret;
+ memset(dict, 0, 257);
+ ret = PREFIX(inflateSetDictionary)(&strm, dict, 257);
+ assert(ret == Z_OK);
+ mem_limit(&strm, (sizeof(struct inflate_state) << 1) + 256);
+ ret = PREFIX(inflatePrime)(&strm, 16, 0); assert(ret == Z_OK);
+ strm.avail_in = 2;
+ strm.next_in = (void *)"\x80";
+ ret = PREFIX(inflateSync)(&strm); assert(ret == Z_DATA_ERROR);
+ ret = PREFIX(inflate)(&strm, Z_NO_FLUSH); assert(ret == Z_STREAM_ERROR);
+ strm.avail_in = 4;
+ strm.next_in = (void *)"\0\0\xff\xff";
+ ret = PREFIX(inflateSync)(&strm); assert(ret == Z_OK);
+ (void)PREFIX(inflateSyncPoint)(&strm);
+ ret = PREFIX(inflateCopy)(&copy, &strm); assert(ret == Z_MEM_ERROR);
+ mem_limit(&strm, 0);
+ ret = PREFIX(inflateUndermine)(&strm, 1);
+#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
+ assert(ret == Z_OK);
+#else
+ assert(ret == Z_DATA_ERROR);
+#endif
+ (void)PREFIX(inflateMark)(&strm);
+ ret = PREFIX(inflateEnd)(&strm); assert(ret == Z_OK);
+ mem_done(&strm, "miscellaneous, force memory errors");
+}
+
+/* input and output functions for inflateBack() */
+static z_uint32_t pull(void *desc, z_const unsigned char **buf) {
+ static unsigned int next = 0;
+ static unsigned char dat[] = {0x63, 0, 2, 0};
+ struct inflate_state *state;
+
+ if (desc == NULL) {
+ next = 0;
+ return 0; /* no input (already provided at next_in) */
+ }
+ state = (void *)((PREFIX3(stream) *)desc)->state;
+ if (state != NULL)
+ state->mode = SYNC; /* force an otherwise impossible situation */
+ return next < sizeof(dat) ? (*buf = dat + next++, 1) : 0;
+}
+
+static z_int32_t push(void *desc, unsigned char *buf, z_uint32_t len) {
+ buf += len;
+ Z_UNUSED(buf);
+ return desc != NULL; /* force error if desc not null */
+}
+
+/* cover inflateBack() up to common deflate data cases and after those */
+static void cover_back(void) {
+ int ret;
+ PREFIX3(stream) strm;
+ unsigned char win[32768];
+
+#ifdef ZLIB_COMPAT
+ ret = PREFIX(inflateBackInit_)(NULL, 0, win, 0, 0);
+ assert(ret == Z_VERSION_ERROR);
+#endif
+
+ ret = PREFIX(inflateBackInit)(NULL, 0, win);
+ assert(ret == Z_STREAM_ERROR);
+ ret = PREFIX(inflateBack)(NULL, NULL, NULL, NULL, NULL);
+ assert(ret == Z_STREAM_ERROR);
+ ret = PREFIX(inflateBackEnd)(NULL); assert(ret == Z_STREAM_ERROR);
+ fputs("inflateBack bad parameters\n", stderr);
+
+ mem_setup(&strm);
+ ret = PREFIX(inflateBackInit)(&strm, 15, win);
+ assert(ret == Z_OK);
+ strm.avail_in = 2;
+ strm.next_in = (void *)"\x03";
+ ret = PREFIX(inflateBack)(&strm, pull, NULL, push, NULL);
+ assert(ret == Z_STREAM_END);
+ /* force output error */
+ strm.avail_in = 3;
+ strm.next_in = (void *)"\x63\x00";
+ ret = PREFIX(inflateBack)(&strm, pull, NULL, push, &strm);
+ assert(ret == Z_BUF_ERROR);
+ /* force mode error by mucking with state */
+ ret = PREFIX(inflateBack)(&strm, pull, &strm, push, NULL);
+ assert(ret == Z_STREAM_ERROR);
+ ret = PREFIX(inflateBackEnd)(&strm); assert(ret == Z_OK);
+ mem_done(&strm, "inflateBack bad state");
+
+ ret = PREFIX(inflateBackInit)(&strm, 15, win);
+ assert(ret == Z_OK);
+ ret = PREFIX(inflateBackEnd)(&strm); assert(ret == Z_OK);
+ fputs("inflateBack built-in memory routines\n", stderr);
+ Z_UNUSED(ret);
+}
+
+/* do a raw inflate of data in hexadecimal with both inflate and inflateBack */
+static int try(char *hex, char *id, int err) {
+ int ret;
+ unsigned len, size;
+ unsigned char *in, *out, *win;
+ char *prefix;
+ PREFIX3(stream) strm;
+
+ /* convert to hex */
+ in = h2b(hex, &len);
+ assert(in != NULL);
+
+ /* allocate work areas */
+ size = len << 3;
+ out = malloc(size);
+ assert(out != NULL);
+ win = malloc(32768);
+ assert(win != NULL);
+ prefix = malloc(strlen(id) + 6);
+ assert(prefix != NULL);
+
+ /* first with inflate */
+ strcpy(prefix, id);
+ strcat(prefix, "-late");
+ mem_setup(&strm);
+ strm.avail_in = 0;
+ strm.next_in = NULL;
+ ret = PREFIX(inflateInit2)(&strm, err < 0 ? 47 : -15);
+ assert(ret == Z_OK);
+ strm.avail_in = len;
+ strm.next_in = in;
+ do {
+ strm.avail_out = size;
+ strm.next_out = out;
+ ret = PREFIX(inflate)(&strm, Z_TREES);
+ assert(ret != Z_STREAM_ERROR && ret != Z_MEM_ERROR);
+ if (ret == Z_DATA_ERROR || ret == Z_NEED_DICT)
+ break;
+ } while (strm.avail_in || strm.avail_out == 0);
+ if (err) {
+ assert(ret == Z_DATA_ERROR);
+ assert(strcmp(id, strm.msg) == 0);
+ }
+ PREFIX(inflateEnd)(&strm);
+ mem_done(&strm, prefix);
+
+ /* then with inflateBack */
+ if (err >= 0) {
+ strcpy(prefix, id);
+ strcat(prefix, "-back");
+ mem_setup(&strm);
+ ret = PREFIX(inflateBackInit)(&strm, 15, win);
+ assert(ret == Z_OK);
+ strm.avail_in = len;
+ strm.next_in = in;
+ ret = PREFIX(inflateBack)(&strm, pull, NULL, push, NULL);
+ assert(ret != Z_STREAM_ERROR);
+ if (err && ret != Z_BUF_ERROR) {
+ assert(ret == Z_DATA_ERROR);
+ assert(strcmp(id, strm.msg) == 0);
+ }
+ PREFIX(inflateBackEnd)(&strm);
+ mem_done(&strm, prefix);
+ }
+
+ /* clean up */
+ free(prefix);
+ free(win);
+ free(out);
+ free(in);
+ return ret;
+}
+
+/* cover deflate data cases in both inflate() and inflateBack() */
+static void cover_inflate(void) {
+ try("0 0 0 0 0", "invalid stored block lengths", 1);
+ try("3 0", "fixed", 0);
+ try("6", "invalid block type", 1);
+ try("1 1 0 fe ff 0", "stored", 0);
+ try("fc 0 0", "too many length or distance symbols", 1);
+ try("4 0 fe ff", "invalid code lengths set", 1);
+ try("4 0 24 49 0", "invalid bit length repeat", 1);
+ try("4 0 24 e9 ff ff", "invalid bit length repeat", 1);
+ try("4 0 24 e9 ff 6d", "invalid code -- missing end-of-block", 1);
+ try("4 80 49 92 24 49 92 24 71 ff ff 93 11 0",
+ "invalid literal/lengths set", 1);
+ try("4 80 49 92 24 49 92 24 f b4 ff ff c3 84", "invalid distances set", 1);
+ try("4 c0 81 8 0 0 0 0 20 7f eb b 0 0", "invalid literal/length code", 1);
+ try("2 7e ff ff", "invalid distance code", 1);
+#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
+ try("c c0 81 0 0 0 0 0 90 ff 6b 4 0", "invalid distance too far back", 0);
+#else
+ try("c c0 81 0 0 0 0 0 90 ff 6b 4 0", "invalid distance too far back", 1);
+#endif
+
+ /* also trailer mismatch just in inflate() */
+ try("1f 8b 8 0 0 0 0 0 0 0 3 0 0 0 0 1", "incorrect data check", -1);
+ try("1f 8b 8 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 1",
+ "incorrect length check", -1);
+ try("5 c0 21 d 0 0 0 80 b0 fe 6d 2f 91 6c", "pull 17", 0);
+ try("5 e0 81 91 24 cb b2 2c 49 e2 f 2e 8b 9a 47 56 9f fb fe ec d2 ff 1f",
+ "long code", 0);
+ try("ed c0 1 1 0 0 0 40 20 ff 57 1b 42 2c 4f", "length extra", 0);
+ try("ed cf c1 b1 2c 47 10 c4 30 fa 6f 35 1d 1 82 59 3d fb be 2e 2a fc f c",
+ "long distance and extra", 0);
+ try("ed c0 81 0 0 0 0 80 a0 fd a9 17 a9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "
+ "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6", "window end", 0);
+ inf("2 8 20 80 0 3 0", "inflate_fast TYPE return", 0, -15, 258,
+ Z_STREAM_END);
+ inf("63 18 5 40 c 0", "window wrap", 3, -8, 300, Z_OK);
+}
+
+#ifndef TEST_STOCK_ZLIB
+/* cover remaining lines in inftrees.c */
+static void cover_trees(void) {
+ int ret;
+ unsigned bits;
+ uint16_t lens[16], work[16];
+ code *next, table[ENOUGH_DISTS];
+
+ /* we need to call inflate_table() directly in order to manifest not-
+ enough errors, since zlib ensures that enough is always enough */
+ for (bits = 0; bits < 15; bits++)
+ lens[bits] = (uint16_t)(bits + 1);
+ lens[15] = 15;
+ next = table;
+ bits = 15;
+ ret = zng_inflate_table(DISTS, lens, 16, &next, &bits, work);
+ assert(ret == 1);
+ next = table;
+ bits = 1;
+ ret = zng_inflate_table(DISTS, lens, 16, &next, &bits, work);
+ assert(ret == 1);
+ fputs("inflate_table not enough errors\n", stderr);
+ Z_UNUSED(ret);
+}
+#endif
+
+/* cover remaining inffast.c decoding and window copying */
+static void cover_fast(void) {
+ inf("e5 e0 81 ad 6d cb b2 2c c9 01 1e 59 63 ae 7d ee fb 4d fd b5 35 41 68"
+ " ff 7f 0f 0 0 0", "fast length extra bits", 0, -8, 258, Z_DATA_ERROR);
+ inf("25 fd 81 b5 6d 59 b6 6a 49 ea af 35 6 34 eb 8c b9 f6 b9 1e ef 67 49"
+ " 50 fe ff ff 3f 0 0", "fast distance extra bits", 0, -8, 258,
+ Z_DATA_ERROR);
+ inf("3 7e 0 0 0 0 0", "fast invalid distance code", 0, -8, 258,
+ Z_DATA_ERROR);
+ inf("1b 7 0 0 0 0 0", "fast invalid literal/length code", 0, -8, 258,
+ Z_DATA_ERROR);
+ inf("d c7 1 ae eb 38 c 4 41 a0 87 72 de df fb 1f b8 36 b1 38 5d ff ff 0",
+ "fast 2nd level codes and too far back", 0, -8, 258, Z_DATA_ERROR);
+ inf("63 18 5 8c 10 8 0 0 0 0", "very common case", 0, -8, 259, Z_OK);
+ inf("63 60 60 18 c9 0 8 18 18 18 26 c0 28 0 29 0 0 0",
+ "contiguous and wrap around window", 6, -8, 259, Z_OK);
+ inf("63 0 3 0 0 0 0 0", "copy direct from output", 0, -8, 259,
+ Z_STREAM_END);
+}
+
+static void cover_cve_2022_37434(void) {
+ inf("1f 8b 08 04 61 62 63 64 61 62 52 51 1f 8b 08 04 61 62 63 64 61 62 52 51 1f 8b 08 04 61 62 63 64 61 62 52 51 1f 8b 08 04 61 62 63 64 61 62 52 51", "wtf", 13, 47, 12, Z_OK);
+}
+
+int main(void) {
+ fprintf(stderr, "%s\n", zVersion());
+ cover_support();
+ cover_wrap();
+ cover_back();
+ cover_inflate();
+#ifndef TEST_STOCK_ZLIB
+ cover_trees();
+#endif
+ cover_fast();
+ cover_cve_2022_37434();
+ return 0;
+}
diff --git a/neozip/test/minideflate.c b/neozip/test/minideflate.c
new file mode 100644
index 0000000000..ab8dc5313c
--- /dev/null
+++ b/neozip/test/minideflate.c
@@ -0,0 +1,368 @@
+/* minideflate.c -- test deflate/inflate under specific conditions
+ * Copyright (C) 2020 Nathan Moinvaziri
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include "zbuild.h"
+
+#include <inttypes.h>
+#include <stdio.h>
+#include <assert.h>
+
+#include "zutil.h"
+
+#if defined(_WIN32) || defined(__CYGWIN__)
+# include <fcntl.h>
+# include <io.h>
+# define SET_BINARY_MODE(file) setmode(fileno(file), O_BINARY)
+#else
+# define SET_BINARY_MODE(file)
+#endif
+
+#ifdef _MSC_VER
+# include <string.h>
+# define strcasecmp _stricmp
+#else
+# include <strings.h>
+#endif
+
+#define CHECK_ERR(err, msg) { \
+ if (err != Z_OK) { \
+ fprintf(stderr, "%s error: %d\n", msg, err); \
+ exit(1); \
+ } \
+}
+
+/* Default read/write i/o buffer size based on GZBUFSIZE */
+#define BUFSIZE 131072
+
+/* ===========================================================================
+ * deflate() using specialized parameters
+ */
+static void deflate_params(FILE *fin, FILE *fout, int32_t read_buf_size, int32_t write_buf_size, int32_t level,
+ int32_t window_bits, int32_t mem_level, int32_t strategy, int32_t flush) {
+ PREFIX3(stream) c_stream; /* compression stream */
+ uint8_t *read_buf;
+ uint8_t *write_buf;
+ int32_t read;
+ int err;
+
+ read_buf = (uint8_t *)malloc(read_buf_size);
+ if (read_buf == NULL) {
+ fprintf(stderr, "failed to create read buffer (%" PRId32 ")\n", read_buf_size);
+ return;
+ }
+ write_buf = (uint8_t *)malloc(write_buf_size);
+ if (write_buf == NULL) {
+ fprintf(stderr, "failed to create write buffer (%" PRId32 ")\n", write_buf_size);
+ free(read_buf);
+ return;
+ }
+
+ c_stream.zalloc = NULL;
+ c_stream.zfree = NULL;
+ c_stream.opaque = (void *)0;
+ c_stream.total_in = 0;
+ c_stream.total_out = 0;
+ c_stream.next_out = write_buf;
+ c_stream.avail_out = write_buf_size;
+
+ err = PREFIX(deflateInit2)(&c_stream, level, Z_DEFLATED, window_bits, mem_level, strategy);
+ CHECK_ERR(err, "deflateInit2");
+
+ /* Process input using our read buffer and flush type,
+ * output to stdout only once write buffer is full */
+ do {
+ read = (int32_t)fread(read_buf, 1, read_buf_size, fin);
+ if (read <= 0)
+ break;
+
+ c_stream.next_in = (z_const uint8_t *)read_buf;
+ c_stream.avail_in = read;
+
+ do {
+ err = PREFIX(deflate)(&c_stream, flush);
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "deflate");
+
+ if (c_stream.next_out == write_buf + write_buf_size) {
+ fwrite(write_buf, 1, write_buf_size, fout);
+ c_stream.next_out = write_buf;
+ c_stream.avail_out = write_buf_size;
+ }
+ } while (c_stream.next_in < read_buf + read);
+ } while (err == Z_OK);
+
+ /* Finish the stream if necessary */
+ if (flush != Z_FINISH) {
+ c_stream.avail_in = 0;
+ do {
+ if (c_stream.next_out == write_buf + write_buf_size) {
+ fwrite(write_buf, 1, write_buf_size, fout);
+ c_stream.next_out = write_buf;
+ c_stream.avail_out = write_buf_size;
+ }
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "deflate");
+ } while (1);
+ }
+
+ /* Output remaining data in write buffer */
+ if (c_stream.next_out != write_buf) {
+ fwrite(write_buf, 1, c_stream.next_out - write_buf, fout);
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ CHECK_ERR(err, "deflateEnd");
+
+ free(read_buf);
+ free(write_buf);
+}
+
+/* ===========================================================================
+ * inflate() using specialized parameters
+ */
+static void inflate_params(FILE *fin, FILE *fout, int32_t read_buf_size, int32_t write_buf_size, int32_t window_bits,
+ int32_t flush) {
+ PREFIX3(stream) d_stream; /* decompression stream */
+ uint8_t *read_buf;
+ uint8_t *write_buf;
+ int32_t read;
+ int err;
+
+
+ read_buf = (uint8_t *)malloc(read_buf_size);
+ if (read_buf == NULL) {
+ fprintf(stderr, "failed to create read buffer (%" PRId32 ")\n", read_buf_size);
+ return;
+ }
+ write_buf = (uint8_t *)malloc(write_buf_size);
+ if (write_buf == NULL) {
+ fprintf(stderr, "failed to create write buffer (%" PRId32 ")\n", write_buf_size);
+ free(read_buf);
+ return;
+ }
+
+ d_stream.zalloc = NULL;
+ d_stream.zfree = NULL;
+ d_stream.opaque = (void *)0;
+ d_stream.total_in = 0;
+ d_stream.total_out = 0;
+ d_stream.next_out = write_buf;
+ d_stream.avail_out = write_buf_size;
+
+ err = PREFIX(inflateInit2)(&d_stream, window_bits);
+ CHECK_ERR(err, "inflateInit2");
+
+ /* Process input using our read buffer and flush type,
+ * output to stdout only once write buffer is full */
+ do {
+ read = (int32_t)fread(read_buf, 1, read_buf_size, fin);
+ if (read <= 0)
+ break;
+
+ d_stream.next_in = (z_const uint8_t *)read_buf;
+ d_stream.avail_in = read;
+
+ do {
+ err = PREFIX(inflate)(&d_stream, flush);
+
+ /* Ignore Z_BUF_ERROR if we are finishing and read buffer size is
+ * purposefully limited */
+ if (flush == Z_FINISH && err == Z_BUF_ERROR && read_buf_size != BUFSIZE)
+ err = Z_OK;
+
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "inflate");
+
+ if (d_stream.next_out == write_buf + write_buf_size) {
+ fwrite(write_buf, 1, write_buf_size, fout);
+ d_stream.next_out = write_buf;
+ d_stream.avail_out = write_buf_size;
+ }
+ } while (d_stream.next_in < read_buf + read);
+ } while (err == Z_OK);
+
+ /* Finish the stream if necessary */
+ if (flush != Z_FINISH) {
+ d_stream.avail_in = 0;
+ do {
+ if (d_stream.next_out == write_buf + write_buf_size) {
+ fwrite(write_buf, 1, write_buf_size, fout);
+ d_stream.next_out = write_buf;
+ d_stream.avail_out = write_buf_size;
+ }
+
+ err = PREFIX(inflate)(&d_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ CHECK_ERR(err, "inflate");
+ } while (1);
+ }
+
+ /* Output remaining data in write buffer */
+ if (d_stream.next_out != write_buf) {
+ fwrite(write_buf, 1, d_stream.next_out - write_buf, fout);
+ }
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ CHECK_ERR(err, "inflateEnd");
+
+ free(read_buf);
+ free(write_buf);
+}
+
+static void show_help(void) {
+ printf("Usage: minideflate [-c][-d][-k] [-f|-h|-R|-F] [-m level] [-r/-t size] [-s flush] [-w bits] [-0 to -9] [input file]\n\n"
+ " -c : write to standard output\n"
+ " -d : decompress\n"
+ " -k : keep input file\n"
+ " -f : compress with Z_FILTERED\n"
+ " -h : compress with Z_HUFFMAN_ONLY\n"
+ " -R : compress with Z_RLE\n"
+ " -F : compress with Z_FIXED\n"
+ " -m : memory level (1 to 8)\n"
+ " -w : window bits..\n"
+ " : -1 to -15 for raw deflate\n"
+ " : 0 to 15 for deflate (adler32)\n"
+ " : 16 to 31 for gzip (crc32)\n"
+ " -s : flush type (0 to 5)\n"
+ " -r : read buffer size\n"
+ " -t : write buffer size\n"
+ " -0 to -9 : compression level\n\n");
+}
+
+int main(int argc, char **argv) {
+ int32_t i;
+ int32_t mem_level = DEF_MEM_LEVEL;
+ int32_t window_bits = INT32_MAX;
+ int32_t strategy = Z_DEFAULT_STRATEGY;
+ int32_t level = Z_DEFAULT_COMPRESSION;
+ int32_t read_buf_size = BUFSIZE;
+ int32_t write_buf_size = BUFSIZE;
+ int32_t flush = Z_NO_FLUSH;
+ uint8_t copyout = 0;
+ uint8_t uncompr = 0;
+ uint8_t keep = 0;
+ FILE *fin = stdin;
+ FILE *fout = stdout;
+
+
+ if (argc == 1) {
+ show_help();
+ return 64; /* EX_USAGE */
+ }
+
+ for (i = 1; i < argc; i++) {
+ if ((strcmp(argv[i], "-m") == 0) && (i + 1 < argc))
+ mem_level = atoi(argv[++i]);
+ else if ((strcmp(argv[i], "-w") == 0) && (i + 1 < argc))
+ window_bits = atoi(argv[++i]);
+ else if ((strcmp(argv[i], "-r") == 0) && (i + 1 < argc))
+ read_buf_size = atoi(argv[++i]);
+ else if ((strcmp(argv[i], "-t") == 0) && (i + 1 < argc))
+ write_buf_size = atoi(argv[++i]);
+ else if ((strcmp(argv[i], "-s") == 0) && (i + 1 < argc))
+ flush = atoi(argv[++i]);
+ else if (strcmp(argv[i], "-c") == 0)
+ copyout = 1;
+ else if (strcmp(argv[i], "-d") == 0)
+ uncompr = 1;
+ else if (strcmp(argv[i], "-k") == 0)
+ keep = 1;
+ else if (strcmp(argv[i], "-f") == 0)
+ strategy = Z_FILTERED;
+ else if (strcmp(argv[i], "-F") == 0)
+ strategy = Z_FIXED;
+ else if (strcmp(argv[i], "-h") == 0)
+ strategy = Z_HUFFMAN_ONLY;
+ else if (strcmp(argv[i], "-R") == 0)
+ strategy = Z_RLE;
+ else if (argv[i][0] == '-' && argv[i][1] >= '0' && argv[i][1] <= '9' && argv[i][2] == 0)
+ level = argv[i][1] - '0';
+ else if (strcmp(argv[i], "--help") == 0) {
+ show_help();
+ return 0;
+ } else if (argv[i][0] == '-') {
+ show_help();
+ return 64; /* EX_USAGE */
+ } else
+ break;
+ }
+
+ SET_BINARY_MODE(stdin);
+ SET_BINARY_MODE(stdout);
+
+ if (i != argc) {
+ fin = fopen(argv[i], "rb+");
+ if (fin == NULL) {
+ fprintf(stderr, "Failed to open file: %s\n", argv[i]);
+ exit(1);
+ }
+ if (!copyout) {
+ char *out_file = (char *)calloc(1, strlen(argv[i]) + 6);
+ if (out_file == NULL) {
+ fprintf(stderr, "Not enough memory\n");
+ exit(1);
+ }
+ strcat(out_file, argv[i]);
+ if (!uncompr) {
+ if (window_bits < 0) {
+ strcat(out_file, ".zraw");
+ } else if (window_bits > MAX_WBITS) {
+ strcat(out_file, ".gz");
+ } else {
+ strcat(out_file, ".z");
+ }
+ } else {
+ char *out_ext = strrchr(out_file, '.');
+ if (out_ext != NULL) {
+ if (strcasecmp(out_ext, ".zraw") == 0 && window_bits == INT32_MAX) {
+ fprintf(stderr, "Must specify window bits for raw deflate stream\n");
+ exit(1);
+ }
+ *out_ext = 0;
+ }
+ }
+ fout = fopen(out_file, "wb");
+ if (fout == NULL) {
+ fprintf(stderr, "Failed to open file: %s\n", out_file);
+ exit(1);
+ }
+ free(out_file);
+ }
+ }
+
+ if (window_bits == INT32_MAX) {
+ window_bits = MAX_WBITS;
+ /* Auto-detect wrapper for inflateInit */
+ if (uncompr)
+ window_bits += 32;
+ }
+
+ if (window_bits == INT32_MAX) {
+ window_bits = MAX_WBITS;
+ /* Auto-detect wrapper for inflateInit */
+ if (uncompr)
+ window_bits += 32;
+ }
+
+ if (uncompr) {
+ inflate_params(fin, fout, read_buf_size, write_buf_size, window_bits, flush);
+ } else {
+ deflate_params(fin, fout, read_buf_size, write_buf_size, level, window_bits, mem_level, strategy, flush);
+ }
+
+ if (fin != stdin) {
+ fclose(fin);
+ if (!copyout && !keep) {
+ unlink(argv[i]);
+ }
+ }
+ if (fout != stdout) {
+ fclose(fout);
+ }
+
+ return 0;
+}
diff --git a/neozip/test/minigzip.c b/neozip/test/minigzip.c
new file mode 100644
index 0000000000..9f86018a6b
--- /dev/null
+++ b/neozip/test/minigzip.c
@@ -0,0 +1,368 @@
+/* minigzip.c -- simulate gzip using the zlib compression library
+ * Copyright (C) 1995-2006, 2010, 2011, 2016 Jean-loup Gailly
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+/*
+ * minigzip is a minimal implementation of the gzip utility. This is
+ * only an example of using zlib and isn't meant to replace the
+ * full-featured gzip. No attempt is made to deal with file systems
+ * limiting names to 14 or 8+3 characters, etc... Error checking is
+ * very limited. So use minigzip only for testing; use gzip for the
+ * real thing.
+ */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+#include <stdio.h>
+
+#include <string.h>
+#include <stdlib.h>
+
+#ifdef USE_MMAP
+# include <sys/types.h>
+# include <sys/mman.h>
+# include <sys/stat.h>
+#endif
+
+#if defined(_WIN32) || defined(__CYGWIN__)
+# include <fcntl.h>
+# include <io.h>
+# define SET_BINARY_MODE(file) setmode(fileno(file), O_BINARY)
+#else
+# define SET_BINARY_MODE(file)
+#endif
+
+#if defined(_MSC_VER) && _MSC_VER < 1900
+# define snprintf _snprintf
+#endif
+
+#if !defined(Z_HAVE_UNISTD_H) && !defined(_LARGEFILE64_SOURCE)
+#ifndef _WIN32 /* unlink already in stdio.h for Win32 */
+extern int unlink (const char *);
+#endif
+#endif
+
+#ifndef GZ_SUFFIX
+# define GZ_SUFFIX ".gz"
+#endif
+#define SUFFIX_LEN (sizeof(GZ_SUFFIX)-1)
+
+#ifndef BUFLEN
+# define BUFLEN 16384 /* read buffer size */
+#endif
+#define BUFLENW (BUFLEN * 3) /* write buffer size */
+#define MAX_NAME_LEN 1024
+
+static char *prog;
+
+/* ===========================================================================
+ * Display error message and exit
+ */
+static void error(const char *msg) {
+ fprintf(stderr, "%s: %s\n", prog, msg);
+ exit(1);
+}
+
+/* ===========================================================================
+ * Display last error message of gzFile, close it and exit
+ */
+
+static void gz_fatal(gzFile file) {
+ z_int32_t err;
+ fprintf(stderr, "%s: %s\n", prog, PREFIX(gzerror)(file, &err));
+ PREFIX(gzclose)(file);
+ exit(1);
+}
+
+#ifdef USE_MMAP /* MMAP version, Miguel Albrecht <malbrech@eso.org> */
+/* ===========================================================================
+ * Try compressing the input file at once using mmap. Return Z_OK if
+ * success, Z_ERRNO otherwise.
+ */
+static int gz_compress_mmap(FILE *in, gzFile out) {
+ int ifd = fileno(in);
+ void *buf; /* mmap'ed buffer for the entire input file */
+ size_t buf_len; /* length of the input file */
+ size_t len;
+ struct stat sb;
+
+ /* Determine the size of the file, needed for mmap: */
+ if (fstat(ifd, &sb) < 0) return Z_ERRNO;
+ /* Check size_t overflow */
+ if (sb.st_size <= 0 || sb.st_size > PTRDIFF_MAX) return Z_ERRNO;
+ buf_len = (size_t)sb.st_size;
+
+ /* Now do the actual mmap: */
+ buf = mmap(NULL, buf_len, PROT_READ, MAP_SHARED, ifd, (off_t)0);
+ if (buf == MAP_FAILED) return Z_ERRNO;
+
+ /* Compress the whole file at once: */
+ len = PREFIX(gzfwrite)(buf, 1, buf_len, out);
+
+ if (len != buf_len) gz_fatal(out);
+
+ munmap(buf, buf_len);
+ fclose(in);
+ if (PREFIX(gzclose)(out) != Z_OK) error("failed gzclose");
+ return Z_OK;
+}
+#endif /* USE_MMAP */
+
+/* ===========================================================================
+ * Compress input to output then close both files.
+ */
+
+static void gz_compress(FILE *in, gzFile out) {
+ char *buf;
+ int len;
+
+#ifdef USE_MMAP
+ /* Try first compressing with mmap. If mmap fails (minigzip used in a
+ * pipe), use the normal fread loop.
+ */
+ if (gz_compress_mmap(in, out) == Z_OK) return;
+#endif
+ buf = (char *)calloc(BUFLEN, 1);
+ if (buf == NULL) {
+ perror("out of memory");
+ exit(1);
+ }
+
+ for (;;) {
+ len = (int)fread(buf, 1, BUFLEN, in);
+ if (ferror(in)) {
+ free(buf);
+ perror("fread");
+ exit(1);
+ }
+ if (len == 0) break;
+
+ if (PREFIX(gzwrite)(out, buf, (unsigned)len) != len) gz_fatal(out);
+ }
+ free(buf);
+ fclose(in);
+ if (PREFIX(gzclose)(out) != Z_OK) error("failed gzclose");
+}
+
+/* ===========================================================================
+ * Uncompress input to output then close both files.
+ */
+static void gz_uncompress(gzFile in, FILE *out) {
+ char *buf = (char *)malloc(BUFLENW);
+ int len;
+
+ if (buf == NULL) error("out of memory");
+
+ for (;;) {
+ len = PREFIX(gzread)(in, buf, BUFLENW);
+ if (len < 0) {
+ free(buf);
+ gz_fatal(in);
+ }
+ if (len == 0) break;
+
+ if ((int)fwrite(buf, 1, (unsigned)len, out) != len) {
+ free(buf);
+ error("failed fwrite");
+ }
+ }
+ free(buf);
+ if (fclose(out)) error("failed fclose");
+
+ if (PREFIX(gzclose)(in) != Z_OK) error("failed gzclose");
+}
+
+
+/* ===========================================================================
+ * Compress the given file: create a corresponding .gz file and remove the
+ * original.
+ */
+static void file_compress(char *file, char *mode, int keep) {
+ char outfile[MAX_NAME_LEN];
+ FILE *in;
+ gzFile out;
+
+ if (strlen(file) + strlen(GZ_SUFFIX) >= sizeof(outfile)) {
+ fprintf(stderr, "%s: filename too long\n", prog);
+ exit(1);
+ }
+
+ snprintf(outfile, sizeof(outfile), "%s%s", file, GZ_SUFFIX);
+
+ in = fopen(file, "rb");
+ if (in == NULL) {
+ perror(file);
+ exit(1);
+ }
+ out = PREFIX(gzopen)(outfile, mode);
+ if (out == NULL) {
+ fprintf(stderr, "%s: can't gzopen %s\n", prog, outfile);
+ exit(1);
+ }
+ gz_compress(in, out);
+
+ if (!keep)
+ unlink(file);
+}
+
+
+/* ===========================================================================
+ * Uncompress the given file and remove the original.
+ */
+static void file_uncompress(char *file, int keep) {
+ char buf[MAX_NAME_LEN];
+ char *infile, *outfile;
+ FILE *out;
+ gzFile in;
+ size_t len = strlen(file);
+
+ if (len + strlen(GZ_SUFFIX) >= sizeof(buf)) {
+ fprintf(stderr, "%s: filename too long\n", prog);
+ exit(1);
+ }
+
+ snprintf(buf, sizeof(buf), "%s", file);
+
+ if (len > SUFFIX_LEN && strcmp(file+len-SUFFIX_LEN, GZ_SUFFIX) == 0) {
+ infile = file;
+ outfile = buf;
+ outfile[len-3] = '\0';
+ } else {
+ outfile = file;
+ infile = buf;
+ snprintf(buf + len, sizeof(buf) - len, "%s", GZ_SUFFIX);
+ }
+ in = PREFIX(gzopen)(infile, "rb");
+ if (in == NULL) {
+ fprintf(stderr, "%s: can't gzopen %s\n", prog, infile);
+ exit(1);
+ }
+ out = fopen(outfile, "wb");
+ if (out == NULL) {
+ perror(file);
+ exit(1);
+ }
+
+ gz_uncompress(in, out);
+
+ if (!keep)
+ unlink(infile);
+}
+
+static void show_help(void) {
+ printf("Usage: minigzip [-c] [-d] [-k] [-f|-h|-R|-F|-T] [-A] [-0 to -9] [files...]\n\n"
+ " -c : write to standard output\n"
+ " -d : decompress\n"
+ " -k : keep input files\n"
+ " -f : compress with Z_FILTERED\n"
+ " -h : compress with Z_HUFFMAN_ONLY\n"
+ " -R : compress with Z_RLE\n"
+ " -F : compress with Z_FIXED\n"
+ " -T : stored raw\n"
+ " -A : auto detect type\n"
+ " -0 to -9 : compression level\n\n");
+}
+
+int main(int argc, char *argv[]) {
+ int copyout = 0;
+ int uncompr = 0;
+ int keep = 0;
+ int i = 0;
+ gzFile file;
+ char *bname, outmode[20];
+ char *strategy = "";
+ char *level = "6";
+ char *type = "b";
+
+ prog = argv[i];
+ bname = strrchr(argv[i], '/');
+ if (bname)
+ bname++;
+ else
+ bname = argv[i];
+
+ if (!strcmp(bname, "gunzip"))
+ uncompr = 1;
+ else if (!strcmp(bname, "zcat"))
+ copyout = uncompr = 1;
+
+ for (i = 1; i < argc; i++) {
+ if (strcmp(argv[i], "-c") == 0)
+ copyout = 1;
+ else if (strcmp(argv[i], "-d") == 0)
+ uncompr = 1;
+ else if (strcmp(argv[i], "-k") == 0)
+ keep = 1;
+ else if (strcmp(argv[i], "-A") == 0)
+ type = "";
+ else if (argv[i][0] == '-' && (argv[i][1] == 'f' || argv[i][1] == 'h' ||
+ argv[i][1] == 'R' || argv[i][1] == 'F' || argv[i][1] == 'T') && argv[i][2] == 0)
+ strategy = argv[i] + 1;
+ else if (argv[i][0] == '-' && argv[i][1] >= '0' && argv[i][1] <= '9' && argv[i][2] == 0)
+ level = argv[i] + 1;
+ else if (strcmp(argv[i], "--help") == 0) {
+ show_help();
+ return 0;
+ } else if (argv[i][0] == '-') {
+ show_help();
+ return 64; /* EX_USAGE */
+ } else {
+ break;
+ }
+ }
+
+ snprintf(outmode, sizeof(outmode), "w%s%s%s", type, strategy, level);
+
+ if (i == argc) {
+ SET_BINARY_MODE(stdin);
+ SET_BINARY_MODE(stdout);
+ if (uncompr) {
+ file = PREFIX(gzdopen)(fileno(stdin), "rb");
+ if (file == NULL) error("can't gzdopen stdin");
+ gz_uncompress(file, stdout);
+ } else {
+ file = PREFIX(gzdopen)(fileno(stdout), outmode);
+ if (file == NULL) error("can't gzdopen stdout");
+ gz_compress(stdin, file);
+ }
+ } else {
+ if (copyout) {
+ SET_BINARY_MODE(stdout);
+ }
+ do {
+ if (uncompr) {
+ if (copyout) {
+ file = PREFIX(gzopen)(argv[i], "rb");
+ if (file == NULL)
+ fprintf(stderr, "%s: can't gzopen %s\n", prog, argv[i]);
+ else
+ gz_uncompress(file, stdout);
+ } else {
+ file_uncompress(argv[i], keep);
+ }
+ } else {
+ if (copyout) {
+ FILE * in = fopen(argv[i], "rb");
+
+ if (in == NULL) {
+ perror(argv[i]);
+ } else {
+ file = PREFIX(gzdopen)(fileno(stdout), outmode);
+ if (file == NULL) error("can't gzdopen stdout");
+
+ gz_compress(in, file);
+ }
+
+ } else {
+ file_compress(argv[i], outmode, keep);
+ }
+ }
+ } while (++i < argc);
+ }
+ return 0;
+}
diff --git a/neozip/test/pigz/CMakeLists.txt b/neozip/test/pigz/CMakeLists.txt
new file mode 100644
index 0000000000..42f1f43d47
--- /dev/null
+++ b/neozip/test/pigz/CMakeLists.txt
@@ -0,0 +1,209 @@
+# CMakeLists.txt -- Build madler/pigz against zlib variant
+
+# Copyright (C) 2021 Nathan Moinvaziri
+# Licensed under the Zlib license, see LICENSE.md for details
+
+# By default pigz will be linked against the system zlib and
+# pthread libraries if installed.
+
+# For compilation on Windows download and use shim:
+# https://github.com/zlib-ng/pigzbench/tree/master/pigz/win
+
+# Optional Variables
+# WITH_CODE_COVERAGE - Enable code coverage reporting
+# WITH_THREADS - Enable threading support
+# PIGZ_ENABLE_TESTS - Enable adding unit tests
+# PIGZ_VERSION - Set the version of pigz to build
+# ZLIB_ROOT - Path to the zlib source directory
+# PTHREADS4W_ROOT - Path to pthreads4w source directory on Windows.
+# If not specified then threading will be disabled.
+
+cmake_minimum_required(VERSION 3.14...4.2.1)
+
+include(CheckCCompilerFlag)
+include(FeatureSummary)
+include(FetchContent)
+
+include(../../cmake/detect-coverage.cmake)
+
+option(WITH_CODE_COVERAGE "Enable code coverage reporting" OFF)
+option(WITH_THREADS "Enable threading support" ON)
+option(PIGZ_ENABLE_TESTS "Build unit tests" ON)
+option(PIGZ_VERSION "Set the version of pigz to build" "")
+
+project(pigz LANGUAGES C)
+
+# Set code coverage compiler flags
+if(WITH_CODE_COVERAGE)
+ add_code_coverage()
+endif()
+
+# Compiler definitions
+if(CMAKE_C_COMPILER_ID STREQUAL "Clang")
+ add_definitions(-fno-caret-diagnostics)
+elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU")
+ if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.5.0)
+ add_definitions(-Wno-unused-result)
+ endif()
+ if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.8.0)
+ add_definitions(-fno-diagnostics-show-caret)
+ endif()
+elseif(WIN32)
+ add_definitions(-D_TIMESPEC_DEFINED)
+ if(MSVC)
+ add_definitions(-D_CRT_SECURE_NO_DEPRECATE)
+ endif()
+endif()
+
+# Fetch pigz source code from official repository
+if(PIGZ_VERSION STREQUAL "")
+ set(PIGZ_TAG master)
+else()
+ set(PIGZ_TAG ${PIGZ_VERSION})
+endif()
+FetchContent_Declare(pigz
+ GIT_REPOSITORY https://github.com/madler/pigz.git
+ GIT_TAG ${PIGZ_TAG})
+
+FetchContent_MakeAvailable(pigz)
+
+set(PIGZ_SRCS
+ ${pigz_SOURCE_DIR}/pigz.c
+ ${pigz_SOURCE_DIR}/try.c)
+
+set(PIGZ_HDRS
+ ${pigz_SOURCE_DIR}/try.h)
+
+add_executable(${PROJECT_NAME} ${PIGZ_SRCS} ${PIGZ_HDRS})
+add_definitions(-DNOZOPFLI)
+if(WIN32)
+ target_include_directories(${PROJECT_NAME} PRIVATE win)
+endif()
+
+# Find and link against pthreads or pthreads4w
+if(WITH_THREADS)
+ if(WIN32)
+ if(DEFINED PTHREADS4W_ROOT)
+ set(CLEANUP_STYLE VC)
+ set(PTHREADS4W_VERSION 3)
+
+ add_subdirectory(${PTHREADS4W_ROOT} ${PTHREADS4W_ROOT} EXCLUDE_FROM_ALL)
+ target_link_libraries(${PROJECT_NAME} pthreadVC3)
+ target_include_directories(${PROJECT_NAME} PRIVATE ${PTHREADS4W_ROOT})
+ else()
+ message(WARNING "Missing pthreads4w root directory")
+ set(WITH_THREADS OFF)
+ endif()
+ else()
+ find_package(Threads REQUIRED)
+ target_link_libraries(${PROJECT_NAME} Threads::Threads)
+ if(NOT APPLE)
+ target_link_libraries(${PROJECT_NAME} m)
+ endif()
+ endif()
+endif()
+
+# Disable threading support
+if(NOT WITH_THREADS)
+ add_definitions(-DNOTHREAD)
+else()
+ set_property(TARGET ${PROJECT_NAME} APPEND PROPERTY SOURCES
+ ${pigz_SOURCE_DIR}/yarn.c
+ ${pigz_SOURCE_DIR}/yarn.h)
+endif()
+
+# Find and link against zlib
+if(NOT DEFINED ZLIB_ROOT)
+ find_package(Zlib REQUIRED)
+endif()
+
+set(ZLIB_ALIASES ON)
+set(ZLIB_COMPAT ON)
+set(ZLIB_ENABLE_TESTS OFF)
+
+add_subdirectory(${ZLIB_ROOT} ${CMAKE_CURRENT_BINARY_DIR}/zlib EXCLUDE_FROM_ALL)
+
+if(NOT DEFINED BUILD_SHARED_LIBS OR NOT BUILD_SHARED_LIBS)
+ set(ZLIB_TARGET zlibstatic)
+else()
+ set(ZLIB_TARGET zlib)
+endif()
+
+target_include_directories(${PROJECT_NAME} PRIVATE ${ZLIB_ROOT} ${CMAKE_CURRENT_BINARY_DIR}/zlib)
+target_link_libraries(${PROJECT_NAME} ${ZLIB_TARGET})
+
+if(NOT SKIP_INSTALL_BINARIES AND NOT SKIP_INSTALL_ALL)
+ install(TARGETS ${PROJECT_NAME} DESTINATION "bin")
+endif()
+
+# Add unit tests
+if(PIGZ_ENABLE_TESTS)
+ enable_testing()
+
+ set(PIGZ_COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:pigz>)
+
+ macro(test_pigz name path)
+ # Construct compression arguments for pigz
+ set(compress_args -k -c)
+ foreach(extra_arg IN ITEMS "${ARGN}")
+ list(APPEND compress_args ${extra_arg})
+ endforeach()
+
+ # Create unique friendly string for test
+ string(REPLACE ";" "" arg_list "${ARGN}")
+ string(REPLACE " " "" arg_list "${arg_list}")
+ string(REPLACE "-" "" arg_list "${arg_list}")
+
+ set(test_id pigz-${name}-${arg_list})
+
+ if(NOT TEST ${test_id})
+ add_test(NAME ${test_id}
+ COMMAND ${CMAKE_COMMAND}
+ "-DTARGET=${PIGZ_COMMAND}"
+ "-DCOMPRESS_ARGS=${compress_args}"
+ "-DDECOMPRESS_ARGS=-d;-c"
+ -DINPUT=${CMAKE_CURRENT_SOURCE_DIR}/${path}
+ -DTEST_NAME=${test_id}
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/../cmake/compress-and-verify.cmake)
+ endif()
+ endmacro()
+
+ set(TEST_CONFIGS
+ -U # RLE compression
+ #-H # Z_HUFFMAN_ONLY (broken in 2.6)
+ -0 # No compression
+ -1 # Deflate quick
+ -4 # Deflate medium (lazy matches)
+ -6 # Deflate medium
+ -9 # Deflate slow
+ )
+
+ file(GLOB_RECURSE TEST_FILE_PATHS
+ LIST_DIRECTORIES false
+ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
+ ${CMAKE_CURRENT_SOURCE_DIR}/../data/*)
+
+ foreach(TEST_FILE_PATH ${TEST_FILE_PATHS})
+ if("${TEST_FILE_PATH}" MATCHES ".gz$" OR "${TEST_FILE_PATH}" MATCHES ".out$" OR
+ "${TEST_FILE_PATH}" MATCHES "/.git/" OR "${TEST_FILE_PATH}" MATCHES ".md$")
+ continue()
+ endif()
+ foreach(TEST_CONFIG ${TEST_CONFIGS})
+ get_filename_component(TEST_NAME ${TEST_FILE_PATH} NAME)
+ if (TEST_NAME STREQUAL "")
+ continue()
+ endif()
+ test_pigz(${TEST_NAME} ${TEST_FILE_PATH} ${TEST_CONFIG})
+ endforeach()
+ endforeach()
+
+ set(GH979_COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:pigz>
+ -d -k -f ${CMAKE_CURRENT_SOURCE_DIR}/../GH-979/pigz-2.6.tar.gz)
+ add_test(NAME GH-979 COMMAND ${GH979_COMMAND})
+endif()
+
+add_feature_info(WITH_CODE_COVERAGE WITH_CODE_COVERAGE "Enable code coverage reporting")
+add_feature_info(WITH_THREADS WITH_THREADS "Enable threading support")
+add_feature_info(PIGZ_ENABLE_TESTS PIGZ_ENABLE_TESTS "Build unit tests")
+
+FEATURE_SUMMARY(WHAT ALL INCLUDE_QUIET_PACKAGES)
diff --git a/neozip/test/pkgcheck.sh b/neozip/test/pkgcheck.sh
new file mode 100644
index 0000000000..29668a9f4f
--- /dev/null
+++ b/neozip/test/pkgcheck.sh
@@ -0,0 +1,180 @@
+#!/bin/sh
+
+usage() {
+ cat <<"_EOF_"
+Usage: sh test/pkgcheck.sh [--zlib-compat]
+
+Verifies that the various build systems produce identical results on a Unixlike system.
+If --zlib-compat, tests with zlib compatible builds.
+
+To build the 32 bit version for the current 64 bit arch:
+
+$ sudo apt install ninja-build diffoscope gcc-multilib
+$ export CMAKE_ARGS="-DCMAKE_C_FLAGS=-m32" CFLAGS=-m32 LDFLAGS=-m32
+$ sh test/pkgcheck.sh
+
+To cross-build, install the appropriate qemu and gcc packages,
+and set the environment variables used by configure or cmake.
+On Ubuntu, for example (values taken from .github/workflows/pkgconf.yml):
+
+arm HF:
+$ sudo apt install ninja-build diffoscope qemu gcc-arm-linux-gnueabihf libc6-dev-armhf-cross
+$ export CHOST=arm-linux-gnueabihf
+$ export CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-arm.cmake -DCMAKE_C_COMPILER_TARGET=${CHOST}"
+
+aarch64:
+$ sudo apt install ninja-build diffoscope qemu gcc-aarch64-linux-gnu libc6-dev-arm64-cross
+$ export CHOST=aarch64-linux-gnu
+$ export CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-aarch64.cmake -DCMAKE_C_COMPILER_TARGET=${CHOST}"
+
+ppc (32 bit big endian):
+$ sudo apt install ninja-build diffoscope qemu gcc-powerpc-linux-gnu libc6-dev-powerpc-cross
+$ export CHOST=powerpc-linux-gnu
+$ export CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc.cmake"
+
+ppc64le:
+$ sudo apt install ninja-build diffoscope qemu gcc-powerpc64le-linux-gnu libc6-dev-ppc64el-cross
+$ export CHOST=powerpc64le-linux-gnu
+$ export CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc64le.cmake"
+
+then:
+$ export CC=${CHOST}-gcc
+$ sh test/pkgcheck.sh [--zlib-compat]
+
+Note: on Mac, you may also need to do 'sudo xcode-select -r' to get cmake to match configure/make's behavior (i.e. omit -isysroot).
+_EOF_
+}
+
+set -ex
+
+case "$1" in
+--zlib-compat)
+ suffix=""
+ CMAKE_ARGS="$CMAKE_ARGS -DZLIB_COMPAT=ON"
+ CONFIGURE_ARGS="$CONFIGURE_ARGS --zlib-compat"
+ ;;
+"")
+ suffix="-ng"
+ ;;
+*)
+ echo "Unknown arg '$1'"
+ usage
+ exit 1
+ ;;
+esac
+
+if ! test -f "configure"
+then
+ echo "Please run from top of source tree"
+ exit 1
+fi
+
+# Tell GNU's ld etc. to use Jan 1 1970 when embedding timestamps
+# Probably only needed on older systems (ubuntu 14.04, BSD?)
+export SOURCE_DATE_EPOCH=0
+case $(uname) in
+Darwin)
+ # Tell Apple's ar etc. to use zero timestamps
+ export ZERO_AR_DATE=1
+ # What CPU are we running on, exactly?
+ sysctl -n machdep.cpu.brand_string
+ sysctl -n machdep.cpu.features
+ if test "$(uname -m)" = "x86_64"
+ then
+ sysctl -n machdep.cpu.leaf7_features
+ sysctl -n machdep.cpu.extfeatures
+ fi
+ ;;
+esac
+
+# Use same compiler for make and cmake builds
+if test "$CC"x = ""x
+then
+ if clang --version
+ then
+ export CC=clang
+ elif gcc --version
+ then
+ export CC=gcc
+ fi
+fi
+
+# New build system
+# Happens to delete top-level zconf.h
+# (which itself is a bug, https://github.com/madler/zlib/issues/162 )
+# which triggers another bug later in configure,
+# https://github.com/madler/zlib/issues/499
+rm -rf btmp2 pkgtmp2
+mkdir btmp2 pkgtmp2
+export DESTDIR=$(pwd)/pkgtmp2
+cd btmp2
+ cmake -G Ninja ${CMAKE_ARGS} ..
+ ninja -v
+ ninja install
+cd ..
+
+# Original build system
+rm -rf btmp1 pkgtmp1
+mkdir btmp1 pkgtmp1
+export DESTDIR=$(pwd)/pkgtmp1/
+cd btmp1
+ case $(uname) in
+ Darwin)
+ export LDFLAGS="-Wl,-headerpad_max_install_names"
+ ;;
+ esac
+ ../configure $CONFIGURE_ARGS
+ make -j2
+ make install
+cd ..
+
+repack_ar() {
+ archive1=$(cd pkgtmp1; find . -type f -name '*.a'; cd ..)
+ archive2=$(cd pkgtmp2; find . -type f -name '*.a'; cd ..)
+ if ! cmp --silent pkgtmp1/$archive1 pkgtmp2/$archive2
+ then
+ echo "libz$suffix.a does not match. Probably filenames differ (.o vs .c.o). Unpacking and renaming..."
+ # Note: %% is posix shell syntax meaning "Remove Largest Suffix Pattern", see
+ # https://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_06_02
+ cd pkgtmp1; ar x $archive1; rm $archive1; cd ..
+ cd pkgtmp2; ar x $archive2; rm $archive2; for a in *.c.o; do mv $a ${a%%.c.o}.o; done; cd ..
+ # Also, remove __.SYMDEF SORTED if present, as it has those funky .c.o names embedded in it.
+ rm -f pkgtmp[12]/__.SYMDEF\ SORTED
+ fi
+}
+
+case $(uname) in
+Darwin)
+ # Remove the build uuid.
+ dylib1=$(find pkgtmp1 -type f -name '*.dylib*')
+ dylib2=$(find pkgtmp2 -type f -name '*.dylib*')
+ strip -x -no_uuid "$dylib1"
+ strip -x -no_uuid "$dylib2"
+ ;;
+esac
+
+# Remove cmake target files to avoid mismatch with configure
+find pkgtmp2 -type f -name '*.cmake' -exec rm '{}' \;
+
+# The ar on newer systems defaults to -D (i.e. deterministic),
+# but FreeBSD 12.1, Debian 8, and Ubuntu 14.04 seem to not do that.
+# I had trouble passing -D safely to the ar inside CMakeLists.txt,
+# so punt and unpack the archive if needed before comparing.
+# Also, cmake uses different .o suffix anyway...
+repack_ar
+
+if diff -Nur pkgtmp1 pkgtmp2
+then
+ echo pkgcheck-cmake-bits-identical PASS
+else
+ echo pkgcheck-cmake-bits-identical FAIL
+ dylib1=$(find pkgtmp1 -type f -name '*.dylib*' -print -o -type f -name '*.so.*' -print)
+ dylib2=$(find pkgtmp2 -type f -name '*.dylib*' -print -o -type f -name '*.so.*' -print)
+ diffoscope $dylib1 $dylib2 | cat
+ exit 1
+fi
+
+rm -rf btmp1 btmp2 pkgtmp1 pkgtmp2
+
+# any failure would have caused an early exit already
+echo "pkgcheck: PASS"
diff --git a/neozip/test/switchlevels.c b/neozip/test/switchlevels.c
new file mode 100644
index 0000000000..2d6ca0e69b
--- /dev/null
+++ b/neozip/test/switchlevels.c
@@ -0,0 +1,168 @@
+/* Compresses a user-specified number of chunks from stdin into stdout as a single gzip stream.
+ * Each chunk is compressed with a user-specified level.
+ */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <inttypes.h>
+#include <stdio.h>
+
+#if defined(_WIN32) || defined(__CYGWIN__)
+# include <fcntl.h>
+# include <io.h>
+# define SET_BINARY_MODE(file) setmode(fileno(file), O_BINARY)
+#else
+# define SET_BINARY_MODE(file)
+#endif
+
+static int read_all(unsigned char *buf, size_t size) {
+ size_t total_read = 0;
+ while (total_read < size) {
+ size_t n_read = fread(buf + total_read, 1, size - total_read, stdin);
+ if (ferror(stdin)) {
+ perror("fread\n");
+ return 1;
+ }
+ if (n_read == 0) {
+ fprintf(stderr, "Premature EOF\n");
+ return 1;
+ }
+ total_read += n_read;
+ }
+ return 0;
+}
+
+static int write_all(unsigned char *buf, size_t size) {
+ size_t total_written = 0;
+ while (total_written < size) {
+ size_t n_written = fwrite(buf + total_written, 1, size - total_written, stdout);
+ if (ferror(stdout)) {
+ perror("fwrite\n");
+ return 1;
+ }
+ total_written += n_written;
+ }
+ return 0;
+}
+
+static int compress_chunk(PREFIX3(stream) *strm, int level, int size, int last) {
+ int ret = 1;
+ int err = 0;
+ unsigned long compsize;
+ unsigned char *buf;
+
+ if (size <= 0) {
+ fprintf(stderr, "compress_chunk() invalid size %d\n", size);
+ goto done;
+ }
+ if (level < 0 || level > 9) {
+ fprintf(stderr, "compress_chunk() invalid level %d\n", level);
+ goto done;
+ }
+
+ compsize = PREFIX(deflateBound)(strm, size);
+ buf = malloc(size + compsize);
+ if (buf == NULL) {
+ fprintf(stderr, "Out of memory\n");
+ goto done;
+ }
+ if (read_all(buf, size) != 0) {
+ goto free_buf;
+ }
+
+ /* Provide only output buffer to deflateParams(). It might need some space to flush the leftovers from the last
+ * deflate(), but we don't want it to compress anything new. */
+ strm->next_in = NULL;
+ strm->avail_in = 0;
+ strm->next_out = buf + size;
+ strm->avail_out = compsize;
+ err = PREFIX(deflateParams)(strm, level, Z_DEFAULT_STRATEGY);
+ if (err != Z_OK) {
+ fprintf(stderr, "deflateParams() failed with code %d\n", err);
+ goto free_buf;
+ }
+
+ /* Provide input buffer to deflate(). */
+ strm->next_in = buf;
+ strm->avail_in = size;
+ err = PREFIX(deflate)(strm, last ? Z_FINISH : Z_SYNC_FLUSH);
+ if ((!last && err != Z_OK) || (last && err != Z_STREAM_END)) {
+ fprintf(stderr, "deflate() failed with code %d\n", err);
+ goto free_buf;
+ }
+ if (strm->avail_in != 0) {
+ fprintf(stderr, "deflate() did not consume %" PRIu32 " bytes of input\n", strm->avail_in);
+ goto free_buf;
+ }
+ if (write_all(buf + size, compsize - strm->avail_out) != 0) {
+ goto free_buf;
+ }
+ ret = 0;
+
+free_buf:
+ free(buf);
+done:
+ return ret;
+}
+
+void show_help(void)
+{
+ printf("Usage: switchlevels [-w bits] level1 size1 [level2 size2 ...]\n\n"
+ " -w : window bits (8 to 15 for gzip, -8 to -15 for zlib)\n\n");
+}
+
+int main(int argc, char **argv) {
+ int ret = EXIT_FAILURE;
+ int err = 0;
+ int size = 0;
+ int level = Z_DEFAULT_COMPRESSION;
+ int level_arg = 1;
+ int window_bits = MAX_WBITS + 16;
+ PREFIX3(stream) strm;
+
+
+ if ((argc == 1) || (argc == 2 && strcmp(argv[1], "--help") == 0)) {
+ show_help();
+ return 0;
+ }
+
+ SET_BINARY_MODE(stdin);
+ SET_BINARY_MODE(stdout);
+
+ memset(&strm, 0, sizeof(strm));
+
+ for (int i = 1; i < argc - 1; i++) {
+ if (strcmp(argv[i], "-w") == 0 && i+1 < argc) {
+ window_bits = atoi(argv[++i]);
+ } else {
+ level_arg = i;
+ level = atoi(argv[i]);
+ break;
+ }
+ }
+
+ err = PREFIX(deflateInit2)(&strm, level, Z_DEFLATED, window_bits, 8, Z_DEFAULT_STRATEGY);
+ if (err != Z_OK) {
+ fprintf(stderr, "deflateInit() failed with code %d\n", err);
+ goto done;
+ }
+
+ for (int i = level_arg; i < argc - 1; i += 2) {
+ level = atoi(argv[i]);
+ size = atoi(argv[i + 1]);
+ if (compress_chunk(&strm, level, size, i + 2 >= argc - 1) != 0) {
+ goto deflate_end;
+ }
+ }
+ ret = EXIT_SUCCESS;
+
+deflate_end:
+ PREFIX(deflateEnd)(&strm);
+done:
+ return ret;
+}
diff --git a/neozip/test/test_adler32.cc b/neozip/test/test_adler32.cc
new file mode 100644
index 0000000000..c461f93939
--- /dev/null
+++ b/neozip/test/test_adler32.cc
@@ -0,0 +1,75 @@
+/* test_adler32.c -- unit test for adler32 in the zlib compression library
+ * Copyright (C) 2020 IBM Corporation
+ * Author: Rogerio Alves <rcardoso@linux.ibm.com>
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "arch_functions.h"
+# include "test_cpu_features.h"
+# include "hash_test_strings_p.h"
+}
+
+#include <gtest/gtest.h>
+
+class adler32_variant : public ::testing::TestWithParam<hash_test> {
+public:
+ void hash(hash_test param, adler32_func adler32) {
+ uint32_t adler = adler32((uint32_t)param.initial_adler, param.buf, param.len);
+ EXPECT_EQ(adler, param.expect_adler);
+ }
+};
+
+INSTANTIATE_TEST_SUITE_P(adler32, adler32_variant, testing::ValuesIn(hash_tests));
+
+#define TEST_ADLER32(name, func, support_flag) \
+ TEST_P(adler32_variant, name) { \
+ if (!(support_flag)) { \
+ GTEST_SKIP(); \
+ return; \
+ } \
+ hash(GetParam(), func); \
+ }
+
+TEST_ADLER32(c, adler32_c, 1)
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+TEST_ADLER32(native, native_adler32, 1)
+#else
+
+#ifdef ARM_NEON
+TEST_ADLER32(neon, adler32_neon, test_cpu_features.arm.has_neon)
+#elif defined(POWER8_VSX)
+TEST_ADLER32(power8, adler32_power8, test_cpu_features.power.has_arch_2_07)
+#elif defined(PPC_VMX)
+TEST_ADLER32(vmx, adler32_vmx, test_cpu_features.power.has_altivec)
+#elif defined(RISCV_RVV)
+TEST_ADLER32(rvv, adler32_rvv, test_cpu_features.riscv.has_rvv)
+#endif
+
+#ifdef X86_SSSE3
+TEST_ADLER32(ssse3, adler32_ssse3, test_cpu_features.x86.has_ssse3)
+#endif
+#ifdef X86_AVX2
+TEST_ADLER32(avx2, adler32_avx2, test_cpu_features.x86.has_avx2)
+#endif
+#ifdef X86_AVX512
+TEST_ADLER32(avx512, adler32_avx512, test_cpu_features.x86.has_avx512_common)
+#endif
+#ifdef X86_AVX512VNNI
+TEST_ADLER32(avx512_vnni, adler32_avx512_vnni, test_cpu_features.x86.has_avx512vnni)
+#endif
+
+#ifdef LOONGARCH_LSX
+TEST_ADLER32(lsx, adler32_lsx, test_cpu_features.loongarch.has_lsx)
+#endif
+#ifdef LOONGARCH_LASX
+TEST_ADLER32(lasx, adler32_lasx, test_cpu_features.loongarch.has_lasx)
+#endif
+
+#endif
diff --git a/neozip/test/test_adler32_copy.cc b/neozip/test/test_adler32_copy.cc
new file mode 100644
index 0000000000..725d86aa95
--- /dev/null
+++ b/neozip/test/test_adler32_copy.cc
@@ -0,0 +1,83 @@
+/* test_adler32_copy.cc -- test for adler32 implementations while copying
+ * Copyright (C) 2025 Hans Kristian Rosbach
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <gtest/gtest.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "arch_functions.h"
+# include "test_cpu_features.h"
+# include "hash_test_strings_p.h"
+}
+
+class adler32_copy_variant : public ::testing::TestWithParam<hash_test> {
+protected:
+ uint8_t dstbuf[HASH_TEST_MAX_LENGTH];
+
+public:
+ /* Ensure that adler32 copy functions returns the correct adler and copies the data */
+ void adler32_copy_test(adler32_copy_func copyfunc, hash_test params) {
+ ASSERT_LE(params.len, HASH_TEST_MAX_LENGTH);
+
+ uint32_t adler = copyfunc(params.initial_adler, dstbuf, params.buf, params.len);
+
+ EXPECT_EQ(adler, params.expect_adler);
+ EXPECT_EQ(0, memcmp(params.buf, dstbuf, params.len));
+ }
+};
+
+INSTANTIATE_TEST_SUITE_P(adler32_copy, adler32_copy_variant, testing::ValuesIn(hash_tests));
+
+#define TEST_ADLER32_COPY(name, copyfunc, support_flag) \
+ TEST_P(adler32_copy_variant, name) { \
+ if (!(support_flag)) { \
+ GTEST_SKIP(); \
+ return; \
+ } \
+ adler32_copy_test(copyfunc, GetParam()); \
+ }
+
+// Base test
+TEST_ADLER32_COPY(c, adler32_copy_c, 1)
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+ // Native test
+ TEST_ADLER32_COPY(native, native_adler32_copy, 1)
+#else
+
+#ifdef ARM_NEON
+TEST_ADLER32_COPY(neon, adler32_copy_neon, test_cpu_features.arm.has_neon)
+#elif defined(POWER8_VSX)
+TEST_ADLER32_COPY(power8, adler32_copy_power8, test_cpu_features.power.has_arch_2_07)
+#elif defined(PPC_VMX)
+TEST_ADLER32_COPY(vmx, adler32_copy_vmx, test_cpu_features.power.has_altivec)
+#elif defined(RISCV_RVV)
+TEST_ADLER32_COPY(rvv, adler32_copy_rvv, test_cpu_features.riscv.has_rvv)
+#endif
+
+#ifdef X86_SSSE3
+TEST_ADLER32_COPY(ssse3, adler32_copy_ssse3, test_cpu_features.x86.has_ssse3)
+#endif
+#ifdef X86_SSE42
+TEST_ADLER32_COPY(sse42, adler32_copy_sse42, test_cpu_features.x86.has_sse42)
+#endif
+#ifdef X86_AVX2
+TEST_ADLER32_COPY(avx2, adler32_copy_avx2, test_cpu_features.x86.has_avx2)
+#endif
+#ifdef X86_AVX512
+TEST_ADLER32_COPY(avx512, adler32_copy_avx512, test_cpu_features.x86.has_avx512_common)
+#endif
+#ifdef X86_AVX512VNNI
+TEST_ADLER32_COPY(avx512_vnni, adler32_copy_avx512_vnni, test_cpu_features.x86.has_avx512vnni)
+#endif
+
+#ifdef LOONGARCH_LSX
+TEST_ADLER32_COPY(lsx, adler32_copy_lsx, test_cpu_features.loongarch.has_lsx)
+#endif
+#ifdef LOONGARCH_LASX
+TEST_ADLER32_COPY(lasx, adler32_copy_lasx, test_cpu_features.loongarch.has_lasx)
+#endif
+
+#endif
diff --git a/neozip/test/test_compare256.cc b/neozip/test/test_compare256.cc
new file mode 100644
index 0000000000..b3efe79fb9
--- /dev/null
+++ b/neozip/test/test_compare256.cc
@@ -0,0 +1,96 @@
+/* test_compare256.cc -- compare256 unit tests
+ * Copyright (C) 2022 Nathan Moinvaziri
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "zutil.h"
+# include "arch_functions.h"
+# include "test_cpu_features.h"
+}
+
+#include <gtest/gtest.h>
+
+#include "test_shared.h"
+
+#define MAX_COMPARE_SIZE (256)
+
+
+/* Ensure that compare256 returns the correct match length */
+static inline void compare256_match_check(compare256_func compare256) {
+ int32_t match_len, i;
+ uint8_t *str1;
+ uint8_t *str2;
+
+ str1 = (uint8_t *)PREFIX(zcalloc)(NULL, 1, MAX_COMPARE_SIZE);
+ ASSERT_TRUE(str1 != NULL);
+ memset(str1, 'a', MAX_COMPARE_SIZE);
+
+ str2 = (uint8_t *)PREFIX(zcalloc)(NULL, 1, MAX_COMPARE_SIZE);
+ ASSERT_TRUE(str2 != NULL);
+ memset(str2, 'a', MAX_COMPARE_SIZE);
+
+ for (i = 0; i <= MAX_COMPARE_SIZE; i++) {
+ if (i < MAX_COMPARE_SIZE)
+ str2[i] = 0;
+
+ match_len = compare256(str1, str2);
+ EXPECT_EQ(match_len, i);
+
+ if (i < MAX_COMPARE_SIZE)
+ str2[i] = 'a';
+ }
+
+ PREFIX(zcfree)(NULL, str1);
+ PREFIX(zcfree)(NULL, str2);
+}
+
+#define TEST_COMPARE256(name, func, support_flag) \
+ TEST(compare256, name) { \
+ if (!(support_flag)) { \
+ GTEST_SKIP(); \
+ return; \
+ } \
+ compare256_match_check(func); \
+ }
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+TEST_COMPARE256(native, native_compare256, 1)
+#else
+
+#ifdef WITH_ALL_FALLBACKS
+TEST_COMPARE256(8, compare256_8, 1)
+TEST_COMPARE256(64, compare256_64, 1)
+#endif
+
+#ifdef X86_SSE2
+TEST_COMPARE256(sse2, compare256_sse2, test_cpu_features.x86.has_sse2)
+#endif
+#ifdef X86_AVX2
+TEST_COMPARE256(avx2, compare256_avx2, test_cpu_features.x86.has_avx2)
+#endif
+#ifdef X86_AVX512
+TEST_COMPARE256(avx512, compare256_avx512, test_cpu_features.x86.has_avx512_common)
+#endif
+#ifdef ARM_NEON
+TEST_COMPARE256(neon, compare256_neon, test_cpu_features.arm.has_neon)
+#endif
+#ifdef POWER9
+TEST_COMPARE256(power9, compare256_power9, test_cpu_features.power.has_arch_3_00)
+#endif
+#ifdef RISCV_RVV
+TEST_COMPARE256(rvv, compare256_rvv, test_cpu_features.riscv.has_rvv)
+#endif
+#ifdef LOONGARCH_LSX
+TEST_COMPARE256(lsx, compare256_lsx, test_cpu_features.loongarch.has_lsx)
+#endif
+#ifdef LOONGARCH_LASX
+TEST_COMPARE256(lasx, compare256_lasx, test_cpu_features.loongarch.has_lasx)
+#endif
+
+#endif
diff --git a/neozip/test/test_compare256_rle.cc b/neozip/test/test_compare256_rle.cc
new file mode 100644
index 0000000000..7a77fce59f
--- /dev/null
+++ b/neozip/test/test_compare256_rle.cc
@@ -0,0 +1,54 @@
+/* test_compare256_rle.cc -- compare256_rle unit tests
+ * Copyright (C) 2022 Nathan Moinvaziri
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "zutil.h"
+# include "compare256_rle.h"
+}
+
+#include <gtest/gtest.h>
+
+#define MAX_COMPARE_SIZE (256)
+
+/* Ensure that compare256_rle returns the correct match length */
+static inline void compare256_rle_match_check(compare256_rle_func compare256_rle) {
+ int32_t match_len, i;
+ uint8_t str1[] = {'a', 'a', 0};
+ uint8_t *str2;
+
+ str2 = (uint8_t *)PREFIX(zcalloc)(NULL, 1, MAX_COMPARE_SIZE);
+ ASSERT_TRUE(str2 != NULL);
+ memset(str2, 'a', MAX_COMPARE_SIZE);
+
+ for (i = 0; i <= MAX_COMPARE_SIZE; i++) {
+ if (i < MAX_COMPARE_SIZE)
+ str2[i] = 0;
+
+ match_len = compare256_rle(str1, str2);
+ EXPECT_EQ(match_len, i);
+
+ if (i < MAX_COMPARE_SIZE)
+ str2[i] = 'a';
+ }
+
+ PREFIX(zcfree)(NULL, str2);
+}
+
+#define TEST_COMPARE256_RLE(name, func, support_flag) \
+ TEST(compare256_rle, name) { \
+ if (!(support_flag)) { \
+ GTEST_SKIP(); \
+ return; \
+ } \
+ compare256_rle_match_check(func); \
+ }
+
+TEST_COMPARE256_RLE(8, compare256_rle_8, 1)
+TEST_COMPARE256_RLE(64, compare256_rle_64, 1)
diff --git a/neozip/test/test_compress.cc b/neozip/test/test_compress.cc
new file mode 100644
index 0000000000..e069b69d31
--- /dev/null
+++ b/neozip/test/test_compress.cc
@@ -0,0 +1,33 @@
+/* test_compress.cc - Test compress() and uncompress() using hello world string */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(compress, basic) {
+ uint8_t compr[128], uncompr[128];
+ z_uintmax_t compr_len = sizeof(compr), uncompr_len = sizeof(uncompr);
+ int err;
+
+ err = PREFIX(compress)(compr, &compr_len, (const unsigned char *)hello, hello_len);
+ EXPECT_EQ(err, Z_OK);
+
+ strcpy((char*)uncompr, "garbage");
+
+ err = PREFIX(uncompress)(uncompr, &uncompr_len, compr, compr_len);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_STREQ((char *)uncompr, (char *)hello);
+}
diff --git a/neozip/test/test_compress_bound.cc b/neozip/test/test_compress_bound.cc
new file mode 100644
index 0000000000..1acda02fc5
--- /dev/null
+++ b/neozip/test/test_compress_bound.cc
@@ -0,0 +1,59 @@
+/* test_compress_bound.cc - Test compressBound() with small buffers */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <gtest/gtest.h>
+
+#include "test_shared.h"
+
+#define MAX_LENGTH (32)
+
+class compress_bound_variant : public testing::TestWithParam<int32_t> {
+public:
+ void estimate(int32_t level) {
+ z_size_t estimate_len = 0;
+ uint8_t *uncompressed = NULL;
+ uint8_t dest[128];
+ int err;
+
+ uncompressed = (uint8_t *)malloc(MAX_LENGTH);
+ ASSERT_TRUE(uncompressed != NULL);
+
+ /* buffer with values for worst case compression */
+ for (int32_t j = 0; j < MAX_LENGTH; j++) {
+ uncompressed[j] = (uint8_t)j;
+ }
+
+ for (z_uintmax_t i = 0; i < MAX_LENGTH; i++) {
+ z_uintmax_t dest_len = sizeof(dest);
+
+ /* calculate actual output length */
+ estimate_len = PREFIX(compressBound)(i);
+
+ err = PREFIX(compress2)(dest, &dest_len, uncompressed, i, level);
+ EXPECT_EQ(err, Z_OK);
+ EXPECT_GE(estimate_len, dest_len) <<
+ "level: " << level << "\n" <<
+ "length: " << i;
+ }
+
+ free(uncompressed);
+ }
+};
+
+TEST_P(compress_bound_variant, estimate) {
+ estimate(GetParam());
+}
+
+INSTANTIATE_TEST_SUITE_P(compress_bound, compress_bound_variant,
+ testing::Values(0, 1, 2, 3, 4, 5, 6, 7, 8, 9));
diff --git a/neozip/test/test_compress_dual.cc b/neozip/test/test_compress_dual.cc
new file mode 100644
index 0000000000..a92ab4be39
--- /dev/null
+++ b/neozip/test/test_compress_dual.cc
@@ -0,0 +1,28 @@
+/* test_compress_dual.cc - Test linking against both zlib and zlib-ng */
+
+#include "zlib.h"
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(compress, basic_zlib) {
+ Byte compr[128], uncompr[128];
+ uLong compr_len = sizeof(compr), uncompr_len = sizeof(uncompr);
+ int err;
+
+ err = compress(compr, &compr_len, (const unsigned char *)hello, hello_len);
+ EXPECT_EQ(err, Z_OK);
+
+ strcpy((char*)uncompr, "garbage");
+
+ err = uncompress(uncompr, &uncompr_len, compr, compr_len);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_STREQ((char *)uncompr, (char *)hello);
+}
diff --git a/neozip/test/test_cpu_features.h b/neozip/test/test_cpu_features.h
new file mode 100644
index 0000000000..70b74283d2
--- /dev/null
+++ b/neozip/test/test_cpu_features.h
@@ -0,0 +1,12 @@
+#ifndef TEST_CPU_FEATURES_H
+#define TEST_CPU_FEATURES_H
+
+#ifndef DISABLE_RUNTIME_CPU_DETECTION
+
+# include "cpu_features.h"
+
+extern struct cpu_features test_cpu_features;
+
+#endif
+
+#endif
diff --git a/neozip/test/test_crc32.cc b/neozip/test/test_crc32.cc
new file mode 100644
index 0000000000..1fb0771119
--- /dev/null
+++ b/neozip/test/test_crc32.cc
@@ -0,0 +1,146 @@
+/* test_crc32.cc -- crc32 unit test
+ * Copyright (C) 2019-2021 IBM Corporation
+ * Authors: Rogerio Alves <rogealve@br.ibm.com>
+ * Matheus Castanho <msc@linux.ibm.com>
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <gtest/gtest.h>
+
+extern "C" {
+# include "zutil_p.h"
+# include "zbuild.h"
+# include "arch_functions.h"
+# include "test_cpu_features.h"
+# include "hash_test_strings_p.h"
+}
+
+class crc32_variant : public ::testing::TestWithParam<hash_test> {
+public:
+ void hash(hash_test param, crc32_func crc32) {
+ uint32_t crc = crc32(param.initial_crc, param.buf, param.len);
+ EXPECT_EQ(crc, param.expect_crc);
+ }
+};
+
+/* Specifically to test where we had dodgy alignment in the ARMv8 CRC32
+ * function. All others are either byte level access or use intrinsics
+ * that work with unaligned access */
+class crc32_align : public ::testing::TestWithParam<int> {
+public:
+ void hash(int param, crc32_func crc32) {
+ uint8_t *buf = (uint8_t*)zng_alloc(sizeof(uint8_t) * (128 + param));
+ memset(buf + param, 0, 128);
+ (void)crc32(0, buf + param, 128);
+ zng_free(buf);
+ }
+};
+
+/* Test large 1MB buffer with known CRC32 */
+class crc32_large_buf : public ::testing::Test {
+protected:
+ static uint8_t *buffer;
+ static const size_t buffer_size = 1024 * 1024;
+
+ static void SetUpTestSuite() {
+ buffer = (uint8_t*)zng_alloc(buffer_size);
+ memset(buffer, 0x55, buffer_size);
+ }
+
+ static void TearDownTestSuite() {
+ zng_free(buffer);
+ }
+
+public:
+ void hash(crc32_func crc32) {
+ EXPECT_EQ(crc32(0, buffer, buffer_size), 0x0026D5FB);
+ }
+};
+
+uint8_t *crc32_large_buf::buffer = nullptr;
+
+INSTANTIATE_TEST_SUITE_P(crc32, crc32_variant, testing::ValuesIn(hash_tests));
+
+#define TEST_CRC32(name, func, support_flag) \
+ TEST_P(crc32_variant, name) { \
+ if (!(support_flag)) { \
+ GTEST_SKIP(); \
+ return; \
+ } \
+ hash(GetParam(), func); \
+ } \
+ TEST_F(crc32_large_buf, name) { \
+ if (!(support_flag)) { \
+ GTEST_SKIP(); \
+ return; \
+ } \
+ hash(func); \
+ }
+
+TEST_CRC32(braid, crc32_braid, 1)
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+TEST_CRC32(native, native_crc32, 1)
+
+#else
+
+#if defined(ARM_CRC32) || defined(LOONGARCH_CRC)
+static const int align_offsets[] = {
+ 1, 2, 3, 4, 5, 6, 7
+};
+
+#define TEST_CRC32_ALIGN(name, func, support_flag) \
+ TEST_P(crc32_align, name) { \
+ if (!(support_flag)) { \
+ GTEST_SKIP(); \
+ return; \
+ } \
+ hash(GetParam(), func); \
+ }
+#endif
+
+#ifndef WITHOUT_CHORBA
+TEST_CRC32(chorba_c, crc32_chorba, 1)
+#endif
+#ifdef ARM_CRC32
+INSTANTIATE_TEST_SUITE_P(crc32_alignment, crc32_align, testing::ValuesIn(align_offsets));
+TEST_CRC32(armv8, crc32_armv8, test_cpu_features.arm.has_crc32)
+TEST_CRC32_ALIGN(armv8_align, crc32_armv8, test_cpu_features.arm.has_crc32)
+#endif
+#ifdef ARM_PMULL_EOR3
+TEST_CRC32(armv8_pmull_eor3, crc32_armv8_pmull_eor3, test_cpu_features.arm.has_crc32 && test_cpu_features.arm.has_pmull && test_cpu_features.arm.has_eor3)
+TEST_CRC32_ALIGN(armv8_pmull_eor3_align, crc32_armv8_pmull_eor3, test_cpu_features.arm.has_crc32 && test_cpu_features.arm.has_pmull && test_cpu_features.arm.has_eor3)
+#endif
+#ifdef RISCV_CRC32_ZBC
+TEST_CRC32(riscv, crc32_riscv64_zbc, test_cpu_features.riscv.has_zbc)
+#endif
+#ifdef POWER8_VSX_CRC32
+TEST_CRC32(power8, crc32_power8, test_cpu_features.power.has_arch_2_07)
+#endif
+#ifdef S390_CRC32_VX
+TEST_CRC32(vx, crc32_s390_vx, test_cpu_features.s390.has_vx)
+#endif
+#ifdef X86_PCLMULQDQ_CRC
+TEST_CRC32(pclmulqdq, crc32_pclmulqdq, test_cpu_features.x86.has_pclmulqdq)
+#endif
+#ifdef X86_VPCLMULQDQ_AVX2
+TEST_CRC32(vpclmulqdq_avx2, crc32_vpclmulqdq_avx2, (test_cpu_features.x86.has_pclmulqdq && test_cpu_features.x86.has_avx2 && test_cpu_features.x86.has_vpclmulqdq))
+#endif
+#ifdef X86_VPCLMULQDQ_AVX512
+TEST_CRC32(vpclmulqdq_avx512, crc32_vpclmulqdq_avx512, (test_cpu_features.x86.has_pclmulqdq && test_cpu_features.x86.has_avx512_common && test_cpu_features.x86.has_vpclmulqdq))
+#endif
+#ifndef WITHOUT_CHORBA_SSE
+# ifdef X86_SSE2
+ TEST_CRC32(chorba_sse2, crc32_chorba_sse2, test_cpu_features.x86.has_sse2)
+# endif
+# ifdef X86_SSE41
+ TEST_CRC32(chorba_sse41, crc32_chorba_sse41, test_cpu_features.x86.has_sse41)
+# endif
+#endif
+#ifdef LOONGARCH_CRC
+INSTANTIATE_TEST_SUITE_P(crc32_alignment, crc32_align, testing::ValuesIn(align_offsets));
+TEST_CRC32(loongarch64, crc32_loongarch64, test_cpu_features.loongarch.has_crc)
+TEST_CRC32_ALIGN(loongarch64_align, crc32_loongarch64, test_cpu_features.loongarch.has_crc)
+#endif
+
+#endif
diff --git a/neozip/test/test_crc32_copy.cc b/neozip/test/test_crc32_copy.cc
new file mode 100644
index 0000000000..fa3059e544
--- /dev/null
+++ b/neozip/test/test_crc32_copy.cc
@@ -0,0 +1,89 @@
+/* test_crc32_copy.cc -- test for crc32 implementations while copying
+ * Copyright (C) 2025 Hans Kristian Rosbach
+ * For conditions of distribution and use, see copyright notice in zlib.h
+ */
+
+#include <gtest/gtest.h>
+
+extern "C" {
+# include "zbuild.h"
+# include "arch_functions.h"
+# include "test_cpu_features.h"
+# include "hash_test_strings_p.h"
+}
+
+class crc32_copy_variant : public ::testing::TestWithParam<hash_test> {
+protected:
+ uint8_t dstbuf[HASH_TEST_MAX_LENGTH];
+
+public:
+ /* Ensure that crc32 copy functions returns the correct crc and copies the data */
+ void crc32_copy_test(crc32_copy_func copyfunc, hash_test params) {
+ ASSERT_LE(params.len, HASH_TEST_MAX_LENGTH);
+
+ uint32_t crc = copyfunc(params.initial_crc, dstbuf, params.buf, params.len);
+
+ EXPECT_EQ(crc, params.expect_crc);
+ EXPECT_EQ(0, memcmp(params.buf, dstbuf, params.len));
+ }
+};
+
+INSTANTIATE_TEST_SUITE_P(crc32_copy, crc32_copy_variant, testing::ValuesIn(hash_tests));
+
+#define TEST_CRC32_COPY(name, copyfunc, support_flag) \
+ TEST_P(crc32_copy_variant, name) { \
+ if (!(support_flag)) { \
+ GTEST_SKIP(); \
+ return; \
+ } \
+ crc32_copy_test(copyfunc, GetParam()); \
+ }
+
+// Base test
+TEST_CRC32_COPY(braid, crc32_copy_braid, 1)
+
+#ifdef DISABLE_RUNTIME_CPU_DETECTION
+ // Native test
+ TEST_CRC32_COPY(native, native_crc32_copy, 1)
+#else
+ // Optimized functions
+# ifndef WITHOUT_CHORBA
+ TEST_CRC32_COPY(chorba, crc32_copy_chorba, 1)
+# endif
+# ifndef WITHOUT_CHORBA_SSE
+# ifdef X86_SSE2
+ TEST_CRC32_COPY(chorba_sse2, crc32_copy_chorba_sse2, test_cpu_features.x86.has_sse2)
+# endif
+# ifdef X86_SSE41
+ TEST_CRC32_COPY(chorba_sse41, crc32_copy_chorba_sse41, test_cpu_features.x86.has_sse41)
+# endif
+# endif
+# ifdef ARM_CRC32
+ TEST_CRC32_COPY(armv8, crc32_copy_armv8, test_cpu_features.arm.has_crc32)
+# endif
+# ifdef ARM_PMULL_EOR3
+ TEST_CRC32_COPY(armv8_pmull_eor3, crc32_copy_armv8_pmull_eor3, test_cpu_features.arm.has_crc32 && test_cpu_features.arm.has_pmull && test_cpu_features.arm.has_eor3)
+# endif
+# ifdef LOONGARCH_CRC
+ TEST_CRC32_COPY(loongarch, crc32_copy_loongarch64, test_cpu_features.loongarch.has_crc)
+# endif
+# ifdef RISCV_CRC32_ZBC
+ TEST_CRC32_COPY(riscv, crc32_copy_riscv64_zbc, test_cpu_features.riscv.has_zbc)
+# endif
+# ifdef POWER8_VSX_CRC32
+ TEST_CRC32_COPY(power8, crc32_copy_power8, test_cpu_features.power.has_arch_2_07)
+# endif
+# ifdef S390_CRC32_VX
+ TEST_CRC32_COPY(vx, crc32_copy_s390_vx, test_cpu_features.s390.has_vx)
+# endif
+# ifdef X86_PCLMULQDQ_CRC
+ TEST_CRC32_COPY(pclmulqdq, crc32_copy_pclmulqdq, test_cpu_features.x86.has_pclmulqdq)
+# endif
+# ifdef X86_VPCLMULQDQ_AVX2
+ TEST_CRC32_COPY(vpclmulqdq_avx2, crc32_copy_vpclmulqdq_avx2, (test_cpu_features.x86.has_pclmulqdq && test_cpu_features.x86.has_avx2 && test_cpu_features.x86.has_vpclmulqdq))
+# endif
+# ifdef X86_VPCLMULQDQ_AVX512
+ TEST_CRC32_COPY(vpclmulqdq_avx512, crc32_copy_vpclmulqdq_avx512, (test_cpu_features.x86.has_pclmulqdq && test_cpu_features.x86.has_avx512_common && test_cpu_features.x86.has_vpclmulqdq))
+# endif
+
+#endif
diff --git a/neozip/test/test_cve-2003-0107.cc b/neozip/test/test_cve-2003-0107.cc
new file mode 100644
index 0000000000..9d9e5b00df
--- /dev/null
+++ b/neozip/test/test_cve-2003-0107.cc
@@ -0,0 +1,28 @@
+// https://www.securityfocus.com/archive/1/312869 --- originally by Richard Kettlewell
+#include <stdlib.h>
+#include <errno.h>
+#include <stdio.h>
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <gtest/gtest.h>
+
+#if !defined(_WIN32) && defined(ZLIB_COMPAT)
+TEST(gzip, cve_2003_0107) {
+ gzFile f;
+ int ret;
+
+ f = gzopen("/dev/null", "w");
+ EXPECT_TRUE(f != NULL);
+
+ ret = gzprintf(f, "%10240s", "");
+ printf("gzprintf -> %d\n", ret);
+ ret = gzclose(f);
+ printf("gzclose -> %d [%d]\n", ret, errno);
+}
+#endif
diff --git a/neozip/test/test_deflate.cc b/neozip/test/test_deflate.cc
new file mode 100644
index 0000000000..4927c821e9
--- /dev/null
+++ b/neozip/test/test_deflate.cc
@@ -0,0 +1,150 @@
+/* test_deflate.cc -- Test deflate/inflate round-trip with various levels, sizes, and strategies */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <gtest/gtest.h>
+
+#include "compressible_data_p.h"
+#include "test_shared.h"
+
+#define MAX_SIZE (1024 * 1024)
+
+class deflate_variant : public testing::TestWithParam<std::tuple<size_t, int, int, int>> {
+public:
+ static void SetUpTestSuite() {
+ inbuf = gen_compressible_data(MAX_SIZE);
+ ASSERT_TRUE(inbuf != NULL);
+ }
+ static void TearDownTestSuite() {
+ free(inbuf);
+ inbuf = NULL;
+ }
+ void SetUp() override {
+ compbuf = NULL;
+ decompbuf = NULL;
+ }
+ void TearDown() override {
+ free(compbuf);
+ free(decompbuf);
+ }
+
+ static uint8_t *inbuf;
+ uint8_t *compbuf;
+ uint8_t *decompbuf;
+};
+
+uint8_t *deflate_variant::inbuf = NULL;
+
+TEST_P(deflate_variant, round_trip) {
+ size_t size = std::get<0>(GetParam());
+ int level = std::get<1>(GetParam());
+ int window_bits = std::get<2>(GetParam());
+ int strategy = std::get<3>(GetParam());
+ PREFIX3(stream) c_stream, d_stream;
+ int err;
+
+ /* Allocate output buffer */
+ unsigned long compbuf_size = PREFIX(deflateBound)(NULL, (unsigned long)size);
+ compbuf = (uint8_t *)malloc((size_t)compbuf_size);
+ ASSERT_TRUE(compbuf != NULL);
+
+ /* Compress */
+ memset(&c_stream, 0, sizeof(c_stream));
+ err = PREFIX(deflateInit2)(&c_stream, level, Z_DEFLATED,
+ window_bits, MAX_MEM_LEVEL, strategy);
+ ASSERT_EQ(err, Z_OK) << "deflateInit2 failed";
+
+ c_stream.next_in = inbuf;
+ c_stream.avail_in = (uint32_t)size;
+ c_stream.next_out = compbuf;
+ c_stream.avail_out = (uint32_t)compbuf_size;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ ASSERT_EQ(err, Z_STREAM_END) <<
+ "size: " << size << "\n" <<
+ "level: " << level << "\n" <<
+ "window_bits: " << window_bits << "\n" <<
+ "strategy: " << strategy;
+
+ size_t comp_size = (size_t)c_stream.total_out;
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ /* Decompress and verify round-trip */
+ decompbuf = (uint8_t *)malloc(size);
+ ASSERT_TRUE(decompbuf != NULL);
+
+ memset(&d_stream, 0, sizeof(d_stream));
+ err = PREFIX(inflateInit2)(&d_stream, window_bits);
+ ASSERT_EQ(err, Z_OK) << "inflateInit2 failed";
+
+ d_stream.next_in = compbuf;
+ d_stream.avail_in = (uint32_t)comp_size;
+ d_stream.next_out = decompbuf;
+ d_stream.avail_out = (uint32_t)size;
+
+ err = PREFIX(inflate)(&d_stream, Z_FINISH);
+ ASSERT_EQ(err, Z_STREAM_END) <<
+ "size: " << size << "\n" <<
+ "level: " << level << "\n" <<
+ "window_bits: " << window_bits << "\n" <<
+ "strategy: " << strategy;
+
+ EXPECT_EQ(d_stream.total_in, comp_size);
+ EXPECT_EQ(d_stream.total_out, size);
+ EXPECT_EQ(memcmp(inbuf, decompbuf, size), 0) << "round-trip data mismatch";
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+}
+
+static std::string deflate_test_name(const testing::TestParamInfo<deflate_variant::ParamType> &info) {
+ size_t size = std::get<0>(info.param);
+ int level = std::get<1>(info.param);
+ int window_bits = std::get<2>(info.param);
+ int strategy = std::get<3>(info.param);
+
+ char size_str[32];
+ if (size >= 1048576 && size % 1048576 == 0)
+ snprintf(size_str, sizeof(size_str), "%zuM", size / 1048576);
+ else if (size >= 1024 && size % 1024 == 0)
+ snprintf(size_str, sizeof(size_str), "%zuK", size / 1024);
+ else
+ snprintf(size_str, sizeof(size_str), "%zu", size);
+
+ const char *wrap_str = (window_bits < 0) ? "raw" : "zlib";
+
+ const char *strategy_str;
+ switch (strategy) {
+ case Z_FILTERED: strategy_str = "filtered"; break;
+ case Z_HUFFMAN_ONLY: strategy_str = "huffman"; break;
+ case Z_RLE: strategy_str = "rle"; break;
+ case Z_FIXED: strategy_str = "fixed"; break;
+ default: strategy_str = "default"; break;
+ }
+
+ char name[64];
+ snprintf(name, sizeof(name), "%s_level%d_%s_%s", size_str, level, wrap_str, strategy_str);
+ return name;
+}
+
+INSTANTIATE_TEST_SUITE_P(deflate, deflate_variant,
+ testing::Combine(
+ testing::Values(1024, 16384, 131072, 1048576), /* size */
+ testing::Values(1, 3, 6, 9), /* level */
+ testing::Values(MAX_WBITS, -MAX_WBITS), /* window_bits */
+ testing::Values(Z_DEFAULT_STRATEGY, Z_FILTERED,
+ Z_HUFFMAN_ONLY, Z_RLE, Z_FIXED) /* strategy */
+ ),
+ deflate_test_name);
diff --git a/neozip/test/test_deflate_bound.cc b/neozip/test/test_deflate_bound.cc
new file mode 100644
index 0000000000..c86d4e00b0
--- /dev/null
+++ b/neozip/test/test_deflate_bound.cc
@@ -0,0 +1,99 @@
+/* test_deflate_bound.cc - Test deflateBound() with small buffers */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <gtest/gtest.h>
+
+#include "test_shared.h"
+
+#define MAX_LENGTH (32)
+
+typedef struct {
+ int32_t level;
+ int32_t window_size;
+ int32_t mem_level;
+ bool after_init;
+} deflate_bound_test;
+
+static const deflate_bound_test tests[] = {
+ {0, MAX_WBITS + 16, 1, true},
+ {Z_BEST_SPEED, MAX_WBITS, MAX_MEM_LEVEL, true},
+ {Z_BEST_COMPRESSION, MAX_WBITS, MAX_MEM_LEVEL, true},
+ {Z_BEST_SPEED, MAX_WBITS, MAX_MEM_LEVEL, false},
+ {Z_BEST_COMPRESSION, MAX_WBITS, MAX_MEM_LEVEL, false},
+};
+
+class deflate_bound_variant : public testing::TestWithParam<deflate_bound_test> {
+public:
+ void estimate(deflate_bound_test param) {
+ PREFIX3(stream) c_stream;
+ int estimate_len = 0;
+ uint8_t *uncompressed = NULL;
+ uint8_t *out_buf = NULL;
+ int err;
+
+ uncompressed = (uint8_t *)malloc(MAX_LENGTH);
+ ASSERT_TRUE(uncompressed != NULL);
+ memset(uncompressed, 'a', MAX_LENGTH);
+
+ for (int32_t i = 0; i < MAX_LENGTH; i++) {
+ memset(&c_stream, 0, sizeof(c_stream));
+
+ c_stream.avail_in = i;
+ c_stream.next_in = (z_const unsigned char *)uncompressed;
+ c_stream.avail_out = 0;
+ c_stream.next_out = out_buf;
+
+ if (!param.after_init)
+ estimate_len = PREFIX(deflateBound)(&c_stream, i);
+
+ err = PREFIX(deflateInit2)(&c_stream, param.level, Z_DEFLATED,
+ param.window_size, param.mem_level, Z_DEFAULT_STRATEGY);
+ EXPECT_EQ(err, Z_OK);
+
+ /* calculate actual output length and update structure */
+ if (param.after_init)
+ estimate_len = PREFIX(deflateBound)(&c_stream, i);
+ out_buf = (uint8_t *)malloc(estimate_len);
+
+ if (out_buf != NULL) {
+ /* update zlib configuration */
+ c_stream.avail_out = estimate_len;
+ c_stream.next_out = out_buf;
+
+ /* do the compression */
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END) <<
+ "level: " << param.level << "\n" <<
+ "window_size: " << param.window_size << "\n" <<
+ "mem_level: " << param.mem_level << "\n" <<
+ "after_init: " << param.after_init << "\n" <<
+ "length: " << i;
+
+ free(out_buf);
+ out_buf = NULL;
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ free(uncompressed);
+ }
+};
+
+TEST_P(deflate_bound_variant, estimate) {
+ estimate(GetParam());
+}
+
+INSTANTIATE_TEST_SUITE_P(deflate_bound, deflate_bound_variant, testing::ValuesIn(tests));
diff --git a/neozip/test/test_deflate_concurrency.cc b/neozip/test/test_deflate_concurrency.cc
new file mode 100644
index 0000000000..1297aee644
--- /dev/null
+++ b/neozip/test/test_deflate_concurrency.cc
@@ -0,0 +1,170 @@
+/* Test deflate() on concurrently modified next_in.
+ *
+ * Plain zlib does not document that this is supported, but in practice it tolerates this, and QEMU live migration is
+ * known to rely on this. Make sure zlib-ng tolerates this as well.
+ */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+#include "zlib.h"
+#else
+#include "zlib-ng.h"
+#endif
+
+#include <gtest/gtest.h>
+
+#include <algorithm>
+#include <atomic>
+#include <cstring>
+#include <thread>
+
+static uint8_t buf[8 * 1024];
+static uint8_t zbuf[4 * 1024];
+static uint8_t tmp[8 * 1024];
+
+/* Thread that increments all bytes in buf by 1. */
+class Mutator {
+ enum class State {
+ PAUSED,
+ RUNNING,
+ STOPPED,
+ };
+
+public:
+ Mutator()
+ : m_state(State::PAUSED), m_target_state(State::PAUSED),
+ m_thread(&Mutator::run, this) {}
+ ~Mutator() {
+ transition(State::STOPPED);
+ m_thread.join();
+ }
+
+ void pause() {
+ transition(State::PAUSED);
+ }
+
+ void resume() {
+ transition(State::RUNNING);
+ }
+
+private:
+ void run() {
+ while (true) {
+ m_state.store(m_target_state);
+ if (m_state == State::PAUSED)
+ continue;
+ if (m_state == State::STOPPED)
+ break;
+ for (uint8_t & i: buf)
+ i++;
+ }
+ }
+
+ void transition(State target_state) {
+ m_target_state = target_state;
+ while (m_state != target_state) {
+ }
+ }
+
+ std::atomic<State> m_state, m_target_state;
+ std::thread m_thread;
+};
+
+TEST(deflate, concurrency) {
+#ifdef S390_DFLTCC_DEFLATE
+ GTEST_SKIP() << "Known to be broken with S390_DFLTCC_DEFLATE";
+#endif
+
+ /* Create reusable mutator and streams. */
+ Mutator mutator;
+
+ PREFIX3(stream) dstrm;
+ memset(&dstrm, 0, sizeof(dstrm));
+ int err = PREFIX(deflateInit2)(&dstrm, Z_BEST_SPEED, Z_DEFLATED, -15, 8, Z_DEFAULT_STRATEGY);
+ ASSERT_EQ(Z_OK, err) << dstrm.msg;
+
+ PREFIX3(stream) istrm;
+ memset(&istrm, 0, sizeof(istrm));
+ err = PREFIX(inflateInit2)(&istrm, -15);
+ ASSERT_EQ(Z_OK, err) << istrm.msg;
+
+ /* Iterate for a certain amount of time. */
+ auto deadline = std::chrono::steady_clock::now() + std::chrono::seconds(1);
+ while (std::chrono::steady_clock::now() < deadline) {
+ /* Start each iteration with a fresh stream state. */
+ err = PREFIX(deflateReset)(&dstrm);
+ ASSERT_EQ(Z_OK, err) << dstrm.msg;
+
+ err = PREFIX(inflateReset)(&istrm);
+ ASSERT_EQ(Z_OK, err) << istrm.msg;
+
+ /* Mutate and compress the first half of buf concurrently.
+ * Decompress and throw away the results, which are unpredictable.
+ */
+ mutator.resume();
+ dstrm.next_in = buf;
+ dstrm.avail_in = sizeof(buf) / 2;
+ while (dstrm.avail_in > 0) {
+ dstrm.next_out = zbuf;
+ dstrm.avail_out = sizeof(zbuf);
+ err = PREFIX(deflate)(&dstrm, Z_NO_FLUSH);
+ ASSERT_EQ(Z_OK, err) << dstrm.msg;
+ istrm.next_in = zbuf;
+ istrm.avail_in = sizeof(zbuf) - dstrm.avail_out;
+ while (istrm.avail_in > 0) {
+ istrm.next_out = tmp;
+ istrm.avail_out = sizeof(tmp);
+ err = PREFIX(inflate)(&istrm, Z_NO_FLUSH);
+ ASSERT_EQ(Z_OK, err) << istrm.msg;
+ }
+ }
+
+ /* Stop mutation and compress the second half of buf.
+ * Decompress and check that the result matches.
+ */
+ mutator.pause();
+ dstrm.next_in = buf + sizeof(buf) / 2;
+ dstrm.avail_in = sizeof(buf) - sizeof(buf) / 2;
+ while (dstrm.avail_in > 0) {
+ dstrm.next_out = zbuf;
+ dstrm.avail_out = sizeof(zbuf);
+ err = PREFIX(deflate)(&dstrm, Z_FINISH);
+ if (err == Z_STREAM_END)
+ ASSERT_EQ(0u, dstrm.avail_in);
+ else
+ ASSERT_EQ(Z_OK, err) << dstrm.msg;
+ istrm.next_in = zbuf;
+ istrm.avail_in = sizeof(zbuf) - dstrm.avail_out;
+ while (istrm.avail_in > 0) {
+ size_t orig_total_out = istrm.total_out;
+ istrm.next_out = tmp;
+ istrm.avail_out = sizeof(tmp);
+ err = PREFIX(inflate)(&istrm, Z_NO_FLUSH);
+ if (err == Z_STREAM_END)
+ ASSERT_EQ(0u, istrm.avail_in);
+ else
+ ASSERT_EQ(Z_OK, err) << istrm.msg;
+ size_t concurrent_size = sizeof(buf) - sizeof(buf) / 2;
+ if (istrm.total_out > concurrent_size) {
+ size_t tmp_offset, buf_offset, size;
+ if (orig_total_out >= concurrent_size) {
+ tmp_offset = 0;
+ buf_offset = orig_total_out - concurrent_size;
+ size = istrm.total_out - orig_total_out;
+ } else {
+ tmp_offset = concurrent_size - orig_total_out;
+ buf_offset = 0;
+ size = istrm.total_out - concurrent_size;
+ }
+ ASSERT_EQ(0, memcmp(tmp + tmp_offset, buf + sizeof(buf) / 2 + buf_offset, size));
+ }
+ }
+ }
+ }
+
+ err = PREFIX(inflateEnd)(&istrm);
+ ASSERT_EQ(Z_OK, err) << istrm.msg;
+
+ err = PREFIX(deflateEnd)(&dstrm);
+ ASSERT_EQ(Z_OK, err) << istrm.msg;
+}
diff --git a/neozip/test/test_deflate_copy.cc b/neozip/test/test_deflate_copy.cc
new file mode 100644
index 0000000000..4adc9be967
--- /dev/null
+++ b/neozip/test/test_deflate_copy.cc
@@ -0,0 +1,60 @@
+/* test_deflate_copy.cc - Test deflateCopy() with small buffers */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "deflate.h"
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(deflate, copy) {
+ PREFIX3(stream) c_stream, c_stream_copy;
+ uint8_t compr[128];
+ z_size_t compr_len = sizeof(compr);
+ int err;
+
+ memset(&c_stream, 0, sizeof(c_stream));
+ memset(&c_stream_copy, 0, sizeof(c_stream_copy));
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ EXPECT_EQ(err, Z_OK);
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != hello_len && c_stream.total_out < compr_len) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ /* Finish the stream, still forcing small buffers: */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ err = PREFIX(deflateCopy)(&c_stream_copy, &c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_EQ(c_stream.state->status, c_stream_copy.state->status);
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ err = PREFIX(deflateEnd)(&c_stream_copy);
+ EXPECT_EQ(err, Z_OK);
+}
diff --git a/neozip/test/test_deflate_deterministic.cc b/neozip/test/test_deflate_deterministic.cc
new file mode 100644
index 0000000000..5cb5cb4ff1
--- /dev/null
+++ b/neozip/test/test_deflate_deterministic.cc
@@ -0,0 +1,71 @@
+/* test_deflate_deterministic.cc - Test deterministic output after deflateReset */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <string>
+#include <gtest/gtest.h>
+
+#include "deflate.h"
+#include "test_shared.h"
+
+
+
+/* Issue: https://github.com/zlib-ng/zlib-ng/issues/2100 */
+
+/* len(data_b) must be greater len(data_a) */
+static const uint8_t data_a[] = { 0 , 'A', 'A', 'A', 'A', 0 , 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A' };
+static const uint8_t data_b[] = { 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B' };
+
+static std::string compress_data(const uint8_t *src, size_t len, PREFIX3(stream)* z_stream) {
+ const uint32_t buffer_size = 1024;
+ uint8_t buffer[buffer_size];
+ int err;
+
+ z_stream->next_in = (z_const uint8_t *)src;
+ z_stream->avail_in = (uint32_t)len;
+ z_stream->next_out = buffer;
+ z_stream->avail_out = buffer_size;
+ err = PREFIX(deflate)(z_stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+ return std::string((const char *)buffer, (size_t)(z_stream->next_out - buffer));
+}
+
+TEST(deflate, deterministic) {
+ const int compression_level = 6;
+ const int window_bits = 15;
+ int err;
+
+ PREFIX3(stream) a_stream;
+ memset(&a_stream, 0, sizeof(a_stream));
+
+ /* Compress a with newly created z_stream. */
+ err = PREFIX(deflateInit2)(&a_stream, compression_level, Z_DEFLATED, window_bits, 8, Z_DEFAULT_STRATEGY);
+ EXPECT_EQ(err, Z_OK);
+
+ const std::string a_compressed = compress_data(data_a, sizeof(data_a), &a_stream);
+ err = PREFIX(deflateEnd)(&a_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ /* Compress b with newly created z_stream. */
+ PREFIX3(stream) b_stream;
+ memset(&b_stream, 0, sizeof(b_stream));
+
+ err = PREFIX(deflateInit2)(&b_stream, compression_level, Z_DEFLATED, window_bits, 8, Z_DEFAULT_STRATEGY);
+ EXPECT_EQ(err, Z_OK);
+ const std::string b_compressed = compress_data(data_b, sizeof(data_b), &b_stream);
+
+ /* Reset the stream. */
+ err = PREFIX(deflateReset)(&b_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ const std::string a_compressed2 = compress_data(data_a, sizeof(data_a), &b_stream);
+ err = PREFIX(deflateEnd)(&b_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_EQ(a_compressed, a_compressed2);
+}
diff --git a/neozip/test/test_deflate_dict.cc b/neozip/test/test_deflate_dict.cc
new file mode 100644
index 0000000000..781c70db27
--- /dev/null
+++ b/neozip/test/test_deflate_dict.cc
@@ -0,0 +1,54 @@
+/* test_deflate_dict.cc - Test deflateGetDictionary() with small buffers */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <gtest/gtest.h>
+
+#include "test_shared.h"
+
+TEST(deflate, dictionary) {
+ PREFIX3(stream) c_stream;
+ uint8_t compr[128];
+ uint32_t compr_len = sizeof(compr);
+ uint8_t *dict_new = NULL;
+ uint32_t *dict_len;
+ int err;
+
+ memset(&c_stream, 0, sizeof(c_stream));
+
+ err = PREFIX(deflateInit)(&c_stream, Z_BEST_COMPRESSION);
+ EXPECT_EQ(err, Z_OK);
+
+ c_stream.next_out = compr;
+ c_stream.avail_out = compr_len;
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.avail_in = (uint32_t)hello_len;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ dict_new = (uint8_t *)calloc(256, 1);
+ ASSERT_TRUE(dict_new != NULL);
+ dict_len = (uint32_t *)calloc(4, 1);
+ ASSERT_TRUE(dict_len != NULL);
+
+ err = PREFIX(deflateGetDictionary)(&c_stream, dict_new, dict_len);
+ EXPECT_EQ(err, Z_OK);
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ free(dict_new);
+ free(dict_len);
+}
diff --git a/neozip/test/test_deflate_hash_head_0.cc b/neozip/test/test_deflate_hash_head_0.cc
new file mode 100644
index 0000000000..cbf601038c
--- /dev/null
+++ b/neozip/test/test_deflate_hash_head_0.cc
@@ -0,0 +1,83 @@
+/* Generated by fuzzing - test hash_head == 0 handling. */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(deflate, hash_head_0) {
+ PREFIX3(stream) strm;
+ int err;
+
+ memset(&strm, 0, sizeof(strm));
+ err = PREFIX(deflateInit2)(&strm, 1, Z_DEFLATED, -15, 4, Z_HUFFMAN_ONLY);
+ EXPECT_EQ(err, Z_OK);
+
+ unsigned char next_in[9698];
+ memset(next_in, 0x30, sizeof(next_in));
+ next_in[8193] = 0x00;
+ next_in[8194] = 0x00;
+ next_in[8195] = 0x00;
+ next_in[8199] = 0x8a;
+ strm.next_in = next_in;
+ unsigned char next_out[21572];
+ strm.next_out = next_out;
+
+ strm.avail_in = 0;
+ strm.avail_out = 1348;
+ err = PREFIX(deflateParams(&strm, 3, Z_FILTERED));
+ EXPECT_EQ(err, Z_OK);
+
+ strm.avail_in = 6728;
+ strm.avail_out = 2696;
+ err = PREFIX(deflate(&strm, Z_SYNC_FLUSH));
+ EXPECT_EQ(err, Z_OK);
+
+ strm.avail_in = 15;
+ strm.avail_out = 1348;
+ err = PREFIX(deflateParams(&strm, 9, Z_FILTERED));
+ EXPECT_EQ(err, Z_OK);
+
+ strm.avail_in = 1453;
+ strm.avail_out = 1348;
+ err = PREFIX(deflate(&strm, Z_FULL_FLUSH));
+ EXPECT_EQ(err, Z_OK);
+
+ strm.avail_in = (uint32_t)(next_in + sizeof(next_in) - strm.next_in);
+ strm.avail_out = (uint32_t)(next_out + sizeof(next_out) - strm.next_out);
+ err = PREFIX(deflate)(&strm, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ uint32_t compressed_size = (uint32_t)(strm.next_out - next_out);
+
+ err = PREFIX(deflateEnd)(&strm);
+ EXPECT_EQ(err, Z_OK);
+
+ memset(&strm, 0, sizeof(strm));
+ err = PREFIX(inflateInit2)(&strm, -MAX_WBITS);
+ EXPECT_EQ(err, Z_OK);
+
+ strm.next_in = next_out;
+ strm.avail_in = compressed_size;
+ unsigned char uncompressed[sizeof(next_in)];
+ strm.next_out = uncompressed;
+ strm.avail_out = sizeof(uncompressed);
+
+ err = PREFIX(inflate)(&strm, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ err = PREFIX(inflateEnd)(&strm);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_TRUE(memcmp(uncompressed, next_in, sizeof(uncompressed)) == 0);
+}
diff --git a/neozip/test/test_deflate_header.cc b/neozip/test/test_deflate_header.cc
new file mode 100644
index 0000000000..0d1b7d0443
--- /dev/null
+++ b/neozip/test/test_deflate_header.cc
@@ -0,0 +1,71 @@
+/* test_deflate_header.cc - Test deflateSetHeader() with small buffers */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <gtest/gtest.h>
+
+#include "test_shared.h"
+
+TEST(deflate, header) {
+ PREFIX3(stream) c_stream;
+ PREFIX(gz_header) *head;
+ uint8_t compr[128];
+ z_size_t compr_len = sizeof(compr);
+ int err;
+
+ head = (PREFIX(gz_header) *)calloc(1, sizeof(PREFIX(gz_header)));
+ ASSERT_TRUE(head != NULL);
+
+ memset(&c_stream, 0, sizeof(c_stream));
+
+ /* gzip */
+ err = PREFIX(deflateInit2)(&c_stream, Z_DEFAULT_COMPRESSION, Z_DEFLATED, MAX_WBITS + 16, 8, Z_DEFAULT_STRATEGY);
+ EXPECT_EQ(err, Z_OK);
+
+ head->text = 1;
+ head->comment = (uint8_t *)"comment";
+ head->name = (uint8_t *)"name";
+ head->hcrc = 1;
+ head->extra = (uint8_t *)"extra";
+ head->extra_len = (uint32_t)strlen((const char *)head->extra);
+
+ err = PREFIX(deflateSetHeader)(&c_stream, head);
+ EXPECT_EQ(err, Z_OK);
+
+ PREFIX(deflateBound)(&c_stream, (unsigned long)compr_len);
+
+ c_stream.next_in = (unsigned char *)hello;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != hello_len && c_stream.total_out < compr_len) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ /* Finish the stream, still forcing small buffers: */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ /* Check CRC32. */
+ EXPECT_EQ(c_stream.adler, 0xb56c3f9dU);
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ free(head);
+}
diff --git a/neozip/test/test_deflate_params.cc b/neozip/test/test_deflate_params.cc
new file mode 100644
index 0000000000..9fadea85f9
--- /dev/null
+++ b/neozip/test/test_deflate_params.cc
@@ -0,0 +1,143 @@
+/* test_deflate_params.cc - Test deflate() with dynamic change of compression level */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+#include <inttypes.h>
+#include <time.h>
+
+#include "deflate.h"
+
+#include <gtest/gtest.h>
+
+#include "test_shared.h"
+
+#define COMPR_BUFFER_SIZE (48 * 1024)
+#define UNCOMPR_BUFFER_SIZE (64 * 1024)
+#define UNCOMPR_RAND_SIZE (8 * 1024)
+
+TEST(deflate, params) {
+ PREFIX3(stream) c_stream, d_stream;
+ uint8_t *compr, *uncompr;
+ uint32_t compr_len, uncompr_len;
+ uint32_t diff;
+ int32_t i;
+ time_t now;
+ int err;
+#ifndef ZLIB_COMPAT
+ int level = -1;
+ int strategy = -1;
+ zng_deflate_param_value params[2];
+
+ params[0].param = Z_DEFLATE_LEVEL;
+ params[0].buf = &level;
+ params[0].size = sizeof(level);
+
+ params[1].param = Z_DEFLATE_STRATEGY;
+ params[1].buf = &strategy;
+ params[1].size = sizeof(strategy);
+#endif
+
+ memset(&c_stream, 0, sizeof(c_stream));
+ memset(&d_stream, 0, sizeof(d_stream));
+
+ compr = (uint8_t *)calloc(1, COMPR_BUFFER_SIZE);
+ ASSERT_TRUE(compr != NULL);
+ uncompr = (uint8_t *)calloc(1, UNCOMPR_BUFFER_SIZE);
+ ASSERT_TRUE(uncompr != NULL);
+
+ compr_len = COMPR_BUFFER_SIZE;
+ uncompr_len = UNCOMPR_BUFFER_SIZE;
+
+ srand((unsigned)time(&now));
+ for (i = 0; i < UNCOMPR_RAND_SIZE; i++)
+ uncompr[i] = (uint8_t)(rand() % 256);
+
+ err = PREFIX(deflateInit)(&c_stream, Z_BEST_SPEED);
+ EXPECT_EQ(err, Z_OK);
+
+ c_stream.next_out = compr;
+ c_stream.avail_out = compr_len;
+ c_stream.next_in = uncompr;
+ c_stream.avail_in = uncompr_len;
+
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+ EXPECT_EQ(c_stream.avail_in, 0);
+
+ /* Feed in already compressed data and switch to no compression: */
+#ifndef ZLIB_COMPAT
+ zng_deflateGetParams(&c_stream, params, sizeof(params) / sizeof(params[0]));
+ EXPECT_EQ(level, Z_BEST_SPEED);
+ EXPECT_EQ(strategy, Z_DEFAULT_STRATEGY);
+
+ level = Z_NO_COMPRESSION;
+ strategy = Z_DEFAULT_STRATEGY;
+ zng_deflateSetParams(&c_stream, params, sizeof(params) / sizeof(params[0]));
+#else
+ PREFIX(deflateParams)(&c_stream, Z_NO_COMPRESSION, Z_DEFAULT_STRATEGY);
+#endif
+
+ c_stream.next_in = compr;
+ diff = (unsigned int)(c_stream.next_out - compr);
+ c_stream.avail_in = diff;
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+
+ /* Switch back to compressing mode: */
+#ifndef ZLIB_COMPAT
+ level = -1;
+ strategy = -1;
+ zng_deflateGetParams(&c_stream, params, sizeof(params) / sizeof(params[0]));
+ EXPECT_EQ(level, Z_NO_COMPRESSION);
+ EXPECT_EQ(strategy, Z_DEFAULT_STRATEGY);
+
+ level = Z_BEST_COMPRESSION;
+ strategy = Z_FILTERED;
+ zng_deflateSetParams(&c_stream, params, sizeof(params) / sizeof(params[0]));
+#else
+ PREFIX(deflateParams)(&c_stream, Z_BEST_COMPRESSION, Z_FILTERED);
+#endif
+
+ c_stream.next_in = uncompr;
+ c_stream.avail_in = (unsigned int)uncompr_len;
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = (unsigned int)compr_len;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ do {
+ d_stream.next_out = uncompr; /* discard the output */
+ d_stream.avail_out = uncompr_len;
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ if (err == Z_STREAM_END)
+ break;
+ EXPECT_EQ(err, Z_OK);
+ } while (err == Z_OK);
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_EQ(d_stream.total_out, (2 * uncompr_len) + diff);
+
+ free(compr);
+ free(uncompr);
+}
diff --git a/neozip/test/test_deflate_pending.cc b/neozip/test/test_deflate_pending.cc
new file mode 100644
index 0000000000..8ccedbf33d
--- /dev/null
+++ b/neozip/test/test_deflate_pending.cc
@@ -0,0 +1,66 @@
+/* test_deflate_pending.cc - Test deflatePending() with small buffers */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <gtest/gtest.h>
+
+#include "test_shared.h"
+
+TEST(deflate, pending) {
+ PREFIX3(stream) c_stream;
+ uint8_t compr[128];
+ z_size_t compr_len = sizeof(compr);
+ int *bits;
+ unsigned *ped;
+ int err;
+
+
+ bits = (int *)calloc(256, 1);
+ ASSERT_TRUE(bits != NULL);
+ ped = (unsigned *)calloc(256, 1);
+ ASSERT_TRUE(ped != NULL);
+
+ memset(&c_stream, 0, sizeof(c_stream));
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ EXPECT_EQ(err, Z_OK);
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != hello_len && c_stream.total_out < compr_len) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ err = PREFIX(deflatePending)(&c_stream, ped, bits);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_GE(*bits, 0);
+ EXPECT_LE(*bits, 7);
+
+ /* Finish the stream, still forcing small buffers: */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ free(bits);
+ free(ped);
+}
diff --git a/neozip/test/test_deflate_prime.cc b/neozip/test/test_deflate_prime.cc
new file mode 100644
index 0000000000..75dcf3177a
--- /dev/null
+++ b/neozip/test/test_deflate_prime.cc
@@ -0,0 +1,91 @@
+/* test_deflate_prime.cc - Test deflatePrime() wrapping gzip around deflate stream */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared_ng.h"
+
+#include <gtest/gtest.h>
+
+TEST(deflate, prime) {
+ PREFIX3(stream) c_stream, d_stream;
+ uint8_t compr[128], uncompr[128];
+ z_size_t compr_len = sizeof(compr), uncompr_len = sizeof(uncompr);
+ uint32_t crc = 0;
+ int err;
+
+ memset(&c_stream, 0, sizeof(c_stream));
+ memset(&d_stream, 0, sizeof(d_stream));
+
+ /* Raw deflate windowBits is -15 */
+ err = PREFIX(deflateInit2)(&c_stream, Z_DEFAULT_COMPRESSION, Z_DEFLATED, -MAX_WBITS, 8, Z_DEFAULT_STRATEGY);
+ EXPECT_EQ(err, Z_OK);
+
+ /* Gzip magic number */
+ err = PREFIX(deflatePrime)(&c_stream, 16, 0x8b1f);
+ EXPECT_EQ(err, Z_OK);
+ /* Gzip compression method (deflate) */
+ err = PREFIX(deflatePrime)(&c_stream, 8, 0x08);
+ EXPECT_EQ(err, Z_OK);
+ /* Gzip flags (one byte, using two odd bit calls) */
+ err = PREFIX(deflatePrime)(&c_stream, 3, 0x0);
+ EXPECT_EQ(err, Z_OK);
+ err = PREFIX(deflatePrime)(&c_stream, 5, 0x0);
+ EXPECT_EQ(err, Z_OK);
+ /* Gzip modified time */
+ err = deflate_prime_32(&c_stream, 0x0);
+ EXPECT_EQ(err, Z_OK);
+ /* Gzip extra flags */
+ err = PREFIX(deflatePrime)(&c_stream, 8, 0x0);
+ EXPECT_EQ(err, Z_OK);
+ /* Gzip operating system */
+ err = PREFIX(deflatePrime)(&c_stream, 8, 255);
+ EXPECT_EQ(err, Z_OK);
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.avail_in = (uint32_t)hello_len;
+ c_stream.next_out = compr;
+ c_stream.avail_out = (uint32_t)compr_len;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ /* Gzip uncompressed data crc32 */
+ crc = PREFIX(crc32)(0, (const uint8_t *)hello, (uint32_t)hello_len);
+ err = deflate_prime_32(&c_stream, crc);
+ EXPECT_EQ(err, Z_OK);
+ /* Gzip uncompressed data length */
+ err = deflate_prime_32(&c_stream, (uint32_t)hello_len);
+ EXPECT_EQ(err, Z_OK);
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = (uint32_t)c_stream.total_out;
+ d_stream.next_out = uncompr;
+ d_stream.avail_out = (uint32_t)uncompr_len;
+ d_stream.total_in = 0;
+ d_stream.total_out = 0;
+
+ /* Inflate with gzip header */
+ err = PREFIX(inflateInit2)(&d_stream, MAX_WBITS + 32);
+ EXPECT_EQ(err, Z_OK);
+
+ err = PREFIX(inflate)(&d_stream, Z_FINISH);
+ EXPECT_EQ(err, Z_BUF_ERROR);
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_STREQ((char *)uncompr, hello);
+}
diff --git a/neozip/test/test_deflate_quick_bi_valid.cc b/neozip/test/test_deflate_quick_bi_valid.cc
new file mode 100644
index 0000000000..8ce4c229db
--- /dev/null
+++ b/neozip/test/test_deflate_quick_bi_valid.cc
@@ -0,0 +1,80 @@
+/* Generated by fuzzing - test bi_valid handling in deflate_quick(). */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(deflate_quick, bi_valid) {
+ PREFIX3(stream) strm;
+ int err;
+
+ memset(&strm, 0, sizeof(strm));
+
+ err = PREFIX(deflateInit2)(&strm, 1, Z_DEFLATED, 31, 1, Z_FILTERED);
+ EXPECT_EQ(err, Z_OK);
+
+ z_const unsigned char next_in[554] = {
+ 0x8d, 0xff, 0xff, 0xff, 0xa2, 0x00, 0x00, 0xff, 0x00, 0x15, 0x1b, 0x1b, 0xa2, 0xa2, 0xaf, 0xa2,
+ 0xa2, 0x00, 0x00, 0x00, 0x02, 0x00, 0x1b, 0x3f, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x0b,
+ 0x00, 0xab, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x2b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x01, 0x1e, 0x00, 0x00, 0x01, 0x40, 0x00, 0x00, 0x00, 0x07, 0x01, 0x18, 0x00, 0x22, 0x00,
+ 0x00, 0x00, 0xfd, 0x39, 0xff, 0x00, 0x00, 0x00, 0x1b, 0xfd, 0x3b, 0x00, 0x68, 0x00, 0x00, 0x01,
+ 0xff, 0xff, 0xff, 0x57, 0xf8, 0x1e, 0x00, 0x00, 0xf2, 0xf2, 0xf2, 0xf2, 0xfa, 0xff, 0xff, 0xff,
+ 0xff, 0x7e, 0x00, 0x00, 0x4a, 0x00, 0xc5, 0x00, 0x41, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00,
+ 0x00, 0x02, 0x01, 0x01, 0x00, 0xa2, 0x08, 0x00, 0x00, 0x00, 0x00, 0x27, 0x4a, 0x4a, 0x4a, 0x32,
+ 0x00, 0xf9, 0xff, 0x00, 0x02, 0x9a, 0xff, 0x00, 0x00, 0x3f, 0x50, 0x00, 0x03, 0x00, 0x00, 0x00,
+ 0x3d, 0x00, 0x08, 0x2f, 0x20, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0xff, 0xff, 0xff,
+ 0xff, 0xff, 0xff, 0xff, 0x7a, 0x7a, 0x9e, 0xff, 0xff, 0x00, 0x1b, 0x1b, 0x04, 0x00, 0x1b, 0x1b,
+ 0x1b, 0x1b, 0x00, 0x00, 0x00, 0xaf, 0xad, 0xaf, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x00, 0x2e, 0xff,
+ 0xff, 0x2e, 0xc1, 0x00, 0x10, 0x00, 0x00, 0x00, 0x06, 0x70, 0x00, 0x00, 0x00, 0xda, 0x67, 0x01,
+ 0x47, 0x00, 0x00, 0x00, 0x0c, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x01, 0x00, 0x3f,
+ 0x54, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x00, 0x34, 0x3e, 0xc5, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x7a, 0x00, 0x00, 0x00, 0x0a, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x00, 0x00, 0x00, 0x40, 0x1b, 0x1b, 0x88, 0x1b, 0x1b,
+ 0x1b, 0x1b, 0x1b, 0x1b, 0x1b, 0x1f, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00,
+ 0x00, 0x04, 0x00, 0x00, 0x50, 0x3e, 0x7a, 0x7a, 0x00, 0x00, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x08, 0x87, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x00, 0xff, 0x3d, 0x00, 0x11, 0x4d, 0x00, 0x00, 0x01, 0xd4, 0xd4, 0xd4, 0xd4, 0x2d, 0xd4,
+ 0xd4, 0xff, 0xff, 0xff, 0xfa, 0x01, 0xd4, 0x00, 0xd4, 0x00, 0x00, 0xd4, 0xd4, 0xd4, 0xd4, 0xd4,
+ 0xd4, 0x1e, 0x1e, 0x1e, 0x1e, 0x00, 0x00, 0xfe, 0xf9, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x00,
+ 0x16, 0xd4, 0xd4, 0xd4, 0xd4, 0xd4, 0xd4, 0xd4, 0xd4, 0xd4, 0x00, 0x00, 0x80, 0x20, 0x00, 0x00,
+ 0xff, 0x2b, 0x2b, 0x2b, 0x2b, 0x35, 0xd4, 0xd4, 0x47, 0x3f, 0xd4, 0xd4, 0xd6, 0xd4, 0xd4, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x32, 0x4a, 0x4a, 0x4a, 0x4a, 0x71, 0x00, 0x1b, 0x1b, 0x1b, 0x1b, 0x1b,
+ 0x1f, 0x1b, 0x1b, 0x1b, 0x57, 0x57, 0x57, 0x57, 0x00, 0x00, 0x1b, 0x08, 0x2b, 0x16, 0xc3, 0x00,
+ 0x00, 0x00, 0x29, 0x30, 0x03, 0xff, 0x03, 0x03, 0x03, 0x03, 0x07, 0x00, 0x00, 0x01, 0x0b, 0xff,
+ 0xff, 0xf5, 0xf5, 0xf5, 0x00, 0x00, 0xfe, 0xfa, 0x0f, 0x0f, 0x08, 0x00, 0xff, 0x00, 0x53, 0x3f,
+ 0x00, 0x04, 0x5d, 0xa8, 0x2e, 0xff, 0xff, 0x00, 0x2f, 0x2f, 0x05, 0xff, 0xff, 0xff, 0x2f, 0x2f,
+ 0x2f, 0x0a, 0x0a, 0x0a, 0x0a, 0x30, 0xff, 0xff, 0xff, 0xf0, 0x0a, 0x0a, 0x0a, 0x00, 0xff, 0x3f,
+ 0x4f, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x71, 0x00, 0x2e, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x71, 0x71, 0x00, 0x71, 0x71, 0x71, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff,
+ 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdb, 0x3f, 0x00, 0xfa, 0x71, 0x71, 0x71, 0x00, 0x00,
+ 0x00, 0x01, 0x00, 0x00, 0x00, 0x71, 0x71, 0x71, 0x71, 0x71};
+ strm.next_in = next_in;
+ unsigned char next_out[1236];
+ strm.next_out = next_out;
+
+ strm.avail_in = 554;
+ strm.avail_out = 31;
+
+ err = PREFIX(deflate)(&strm, Z_FINISH);
+ EXPECT_EQ(err, Z_OK);
+
+ strm.avail_in = 0;
+ strm.avail_out = 498;
+ err = PREFIX(deflate)(&strm, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ err = PREFIX(deflateEnd)(&strm);
+ EXPECT_EQ(err, Z_OK);
+}
diff --git a/neozip/test/test_deflate_quick_block_open.cc b/neozip/test/test_deflate_quick_block_open.cc
new file mode 100644
index 0000000000..84a1ac8bbf
--- /dev/null
+++ b/neozip/test/test_deflate_quick_block_open.cc
@@ -0,0 +1,94 @@
+/* Generated by fuzzing - test block_open handling in deflate_quick(). */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(deflate_quick, block_open) {
+ PREFIX3(stream) strm;
+ int err;
+
+ memset(&strm, 0, sizeof(strm));
+ err = PREFIX(deflateInit2)(&strm, 1, Z_DEFLATED, -MAX_WBITS, 1, Z_FILTERED);
+ EXPECT_EQ(err, Z_OK);
+
+ z_const unsigned char next_in[495] =
+ "\x1d\x1d\x00\x00\x00\x4a\x4a\x4a\xaf\xaf\xaf\xaf\x4a\x4a\x4a\x4a"
+ "\x3f\x3e\xaf\xff\xff\xff\x11\xff\xff\xff\xff\xdf\x00\x00\x00\x01"
+ "\x3f\x7d\x00\x50\x00\x00\xc8\x01\x2b\x60\xc8\x00\x24\x06\xff\xff"
+ "\x4a\x4e\x4a\x7d\xc8\x01\xf1\x2b\x28\xb2\xb2\x60\x25\xc8\x06\x00"
+ "\x00\x00\x31\x00\x01\xb2\xb2\xb2\xff\xff\xfd\xb2\xb2\x40\xff\x7d"
+ "\x3b\x34\x3e\xff\xff\x4a\x4a\x01\xf1\xff\x02\xff\x3f\xff\x02\xff"
+ "\xff\xff\xbf\x0a\xff\x00\x01\x3f\xb3\xff\x26\x00\x00\x13\x00\xc8"
+ "\x3e\x3e\x3e\x4a\x76\x4a\x4a\x2e\x7d\x3e\x3e\x3e\x3e\x1d\x1d\x1d"
+ "\xfe\xea\xef\x80\x01\x00\x00\x40\x00\x00\xba\x00\x06\xfa\xb9\x11"
+ "\xbf\x98\xee\x45\x7e\x04\x00\xff\xff\xff\x67\xc3\xc3\xc3\xc3\x00"
+ "\x1d\x1d\xe1\xe3\x00\xc3\x1d\x98\x1d\x1d\x1d\x1d\x1d\x00\x00\x00"
+ "\x02\x00\x00\x00\xe8\x00\x00\x1d\x1d\x1d\xfa\x1e\x12\xff\xff\xff"
+ "\x00\x01\xa7\xff\xff\xff\x1d\x1d\x1d\x63\xff\xff\xff\x1f\x00\x00"
+ "\x10\x40\x00\x00\xad\xff\xff\x3f\x51\x00\xf8\xff\xff\x8a\x01\x05"
+ "\x00\x00\x03\x00\x00\xff\x00\x00\x00\x05\x40\x1f\x08\x0a\x00\xff"
+ "\xff\x01\x00\x12\x00\x00\x01\x00\x3f\x40\x1d\x1d\x1d\x1d\x1d\x1d"
+ "\x21\x00\x1d\x00\x00\x00\xe4\x00\x00\x00\x07\x00\x00\xe6\xe6\x34"
+ "\xe6\xe6\xe6\xe6\xff\x2b\xee\x1d\x1d\x1d\x93\x1d\x1d\x1d\xee\x2b"
+ "\xee\x01\x81\x1d\x00\x00\x58\x00\x00\x01\x14\x00\x1b\x00\x00\x2c"
+ "\x00\x00\x00\xdb\x00\x45\x7e\x00\x00\x00\xfb\xbd\x00\x06\x21\xd3"
+ "\x00\xff\xff\xff\xff\xff\x00\x49\x49\xc9\x49\x3d\x00\x34\x01\x00"
+ "\x00\x6a\x2b\x00\x00\x50\x40\xf0\xf0\xf0\xf0\xa3\xa3\xa3\xa3\xf0"
+ "\xf0\x06\xfa\xa9\x01\x10\xbf\x98\x9d\x2b\xee\x2d\x21\x01\xdb\x00"
+ "\x45\x10\x00\x00\x7e\x00\x00\xe7\x00\xff\xff\x00\xf6\x00\x00\x00"
+ "\xf9\x00\x00\x00\x11\x00\x00\x00\xe2\x00\x00\x00\x2d\x00\x00\x00"
+ "\x2f\x00\x3f\x54\x1d\x1d\x1d\x4c\x4c\x4c\x4c\x2a\x4c\x4c\x10\xff"
+ "\xff\x1a\x00\x00\x01\xff\x00\xff\xf9\x00\x3f\x53\xcc\xcc\xcc\xcc"
+ "\x6e\x00\x00\x01\xf8\xff\xff\xff\x49\x04\x2c\x01\x00\x1d\x00\x07"
+ "\x01\xff\x00\x00\x00\xf8\xff\x09\x00\x27\x00\x08\x21\x1c\x00\x00"
+ "\x00\x00\x1d\x05\x00\x00\x00\x2c\x53\x3f\x00\x01\x00\x00\xe6\xff"
+ "\xff\xff\x6a\x2b\xee\xe6\x6a\x2b\xee\x2b\xee\xee\x2b\xee";
+ strm.next_in = next_in;
+ unsigned char next_out[1116];
+ strm.next_out = next_out;
+
+ strm.avail_in = sizeof(next_in);
+ while (1) {
+ strm.avail_out = (uint32_t)(next_out + sizeof(next_out) - strm.next_out);
+ if (strm.avail_out > 38)
+ strm.avail_out = 38;
+ err = PREFIX(deflate)(&strm, Z_FINISH);
+ if (err == Z_STREAM_END)
+ break;
+ EXPECT_EQ(err, Z_OK);
+ }
+ uint32_t compressed_size = (uint32_t)(strm.next_out - next_out);
+
+ err = PREFIX(deflateEnd)(&strm);
+ EXPECT_EQ(err, Z_OK);
+
+ memset(&strm, 0, sizeof(strm));
+ err = PREFIX(inflateInit2)(&strm, -MAX_WBITS);
+ EXPECT_EQ(err, Z_OK);
+
+ strm.next_in = next_out;
+ strm.avail_in = compressed_size;
+ unsigned char uncompressed[sizeof(next_in)];
+ strm.next_out = uncompressed;
+ strm.avail_out = sizeof(uncompressed);
+
+ err = PREFIX(inflate)(&strm, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ err = PREFIX(inflateEnd)(&strm);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_TRUE(memcmp(uncompressed, next_in, sizeof(uncompressed)) == 0);
+}
diff --git a/neozip/test/test_deflate_tune.cc b/neozip/test/test_deflate_tune.cc
new file mode 100644
index 0000000000..9921ee6437
--- /dev/null
+++ b/neozip/test/test_deflate_tune.cc
@@ -0,0 +1,56 @@
+/* test_deflate_tune.cc - Test deflateTune() with small buffers */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(deflate, tune) {
+ PREFIX3(stream) c_stream;
+ uint8_t compr[128];
+ z_size_t compr_len = sizeof(compr);
+ int err;
+ int good_length = 3;
+ int max_lazy = 5;
+ int nice_length = 18;
+ int max_chain = 6;
+
+ memset(&c_stream, 0, sizeof(c_stream));
+
+ err = PREFIX(deflateInit)(&c_stream, Z_BEST_COMPRESSION);
+ EXPECT_EQ(err, Z_OK);
+
+ err = PREFIX(deflateTune)(&c_stream, good_length, max_lazy,nice_length, max_chain);
+ EXPECT_EQ(err, Z_OK);
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != hello_len && c_stream.total_out < compr_len) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ /* Finish the stream, still forcing small buffers: */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+}
diff --git a/neozip/test/test_dict.cc b/neozip/test/test_dict.cc
new file mode 100644
index 0000000000..8a882d5770
--- /dev/null
+++ b/neozip/test/test_dict.cc
@@ -0,0 +1,98 @@
+/* test_dict.cc - Test deflate() and inflate() with preset dictionary */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+/* Maximum dictionary size, according to inflateGetDictionary() description. */
+#define MAX_DICTIONARY_SIZE 32768
+
+static const char dictionary[] = "hello";
+
+TEST(dictionary, basic) {
+ PREFIX3(stream) c_stream, d_stream;
+ uint8_t compr[128], uncompr[128];
+ z_size_t compr_len = sizeof(compr), uncompr_len = sizeof(uncompr);
+ uint32_t dict_adler = 0;
+ uint8_t check_dict[MAX_DICTIONARY_SIZE];
+ uint32_t check_dict_len = 0;
+ int err;
+
+ memset(&c_stream, 0, sizeof(c_stream));
+ memset(&d_stream, 0, sizeof(d_stream));
+
+ err = PREFIX(deflateInit)(&c_stream, Z_BEST_COMPRESSION);
+ EXPECT_EQ(err, Z_OK);
+
+ err = PREFIX(deflateSetDictionary)(&c_stream,
+ (const unsigned char *)dictionary, (int)sizeof(dictionary));
+ EXPECT_EQ(err, Z_OK);
+
+ dict_adler = c_stream.adler;
+ c_stream.next_out = compr;
+ c_stream.avail_out = (uint32_t)compr_len;
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.avail_in = (uint32_t)hello_len;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ compr_len = (z_size_t)c_stream.total_out;
+
+ strcpy((char*)uncompr, "garbage garbage garbage");
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = (unsigned int)compr_len;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ d_stream.next_out = uncompr;
+ d_stream.avail_out = (unsigned int)uncompr_len;
+
+ for (;;) {
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ if (err == Z_STREAM_END)
+ break;
+ if (err == Z_NEED_DICT) {
+ EXPECT_EQ(d_stream.adler, dict_adler);
+ err = PREFIX(inflateSetDictionary)(&d_stream, (const unsigned char*)dictionary,
+ (uint32_t)sizeof(dictionary));
+ EXPECT_EQ(d_stream.adler, dict_adler);
+ }
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ err = PREFIX(inflateGetDictionary)(&d_stream, NULL, &check_dict_len);
+ EXPECT_EQ(err, Z_OK);
+#ifndef S390_DFLTCC_INFLATE
+ EXPECT_GE(check_dict_len, sizeof(dictionary));
+#endif
+
+ err = PREFIX(inflateGetDictionary)(&d_stream, check_dict, &check_dict_len);
+ EXPECT_EQ(err, Z_OK);
+#ifndef S390_DFLTCC_INFLATE
+ EXPECT_TRUE(memcmp(dictionary, check_dict, sizeof(dictionary)) == 0);
+#endif
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_TRUE(strncmp((char*)uncompr, hello, sizeof(hello)) == 0);
+}
diff --git a/neozip/test/test_gzio.cc b/neozip/test/test_gzio.cc
new file mode 100644
index 0000000000..032e3e1c51
--- /dev/null
+++ b/neozip/test/test_gzio.cc
@@ -0,0 +1,106 @@
+/* test_gzio.cc - Test read/write of .gz files */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <gtest/gtest.h>
+
+#include "test_shared.h"
+
+#define TESTFILE "foo.gz"
+
+TEST(gzip, readwrite) {
+#ifdef NO_GZCOMPRESS
+ fprintf(stderr, "NO_GZCOMPRESS -- gz* functions cannot compress\n");
+ GTEST_SKIP();
+#else
+ uint8_t compr[128], uncompr[128];
+ uint32_t compr_len = sizeof(compr), uncompr_len = sizeof(uncompr);
+ size_t read;
+ int64_t pos;
+ gzFile file;
+ int err;
+
+ Z_UNUSED(compr);
+ /* Write gz file with test data */
+ file = PREFIX(gzopen)(TESTFILE, "wb");
+ ASSERT_TRUE(file != NULL);
+ /* Write hello, hello! using gzputs and gzprintf */
+ PREFIX(gzputc)(file, 'h');
+ EXPECT_EQ(PREFIX(gzputs)(file, "ello"), 4);
+ EXPECT_EQ(PREFIX(gzprintf)(file, ", %s!", "hello"), 8);
+ /* Write string null-teriminator using gzseek */
+ EXPECT_GE(PREFIX(gzseek)(file, 1L, SEEK_CUR), 0);
+ /* Write hello, hello! using gzfwrite using best compression level */
+ EXPECT_EQ(PREFIX(gzsetparams)(file, Z_BEST_COMPRESSION, Z_DEFAULT_STRATEGY), Z_OK);
+ EXPECT_NE(PREFIX(gzfwrite)(hello, hello_len, 1, file), 0UL);
+ /* Flush compressed bytes to file */
+ EXPECT_EQ(PREFIX(gzflush)(file, Z_SYNC_FLUSH), Z_OK);
+ compr_len = (uint32_t)PREFIX(gzoffset)(file);
+ EXPECT_GE(compr_len, 0UL);
+ PREFIX(gzclose)(file);
+
+ /* Open gz file we previously wrote */
+ file = PREFIX(gzopen)(TESTFILE, "rb");
+ ASSERT_TRUE(file != NULL);
+
+ /* Read uncompressed data - hello, hello! string twice */
+ strcpy((char*)uncompr, "garbages");
+ EXPECT_EQ(PREFIX(gzread)(file, uncompr, (unsigned)uncompr_len), (int)(hello_len + hello_len));
+ EXPECT_STREQ((char*)uncompr, hello);
+
+ /* Check position at the end of the gz file */
+ EXPECT_EQ(PREFIX(gzeof)(file), 1);
+
+ /* Seek backwards mid-string and check char reading with gzgetc and gzungetc */
+ pos = PREFIX(gzseek)(file, -22L, SEEK_CUR);
+ EXPECT_EQ(pos, 6);
+ EXPECT_EQ(PREFIX(gztell)(file), pos);
+ EXPECT_EQ(PREFIX(gzgetc)(file), ' ');
+ EXPECT_EQ(PREFIX(gzungetc)(' ', file), ' ');
+ /* Read first hello, hello! string with gzgets */
+ strcpy((char*)uncompr, "garbages");
+ PREFIX(gzgets)(file, (char*)uncompr, (int)uncompr_len);
+ EXPECT_EQ(strlen((char*)uncompr), 7UL); /* " hello!" */
+ EXPECT_STREQ((char*)uncompr, hello + 6);
+
+ /* Seek to second hello, hello! string */
+ pos = PREFIX(gzseek)(file, 14L, SEEK_SET);
+ EXPECT_EQ(pos, 14);
+ EXPECT_EQ(PREFIX(gztell)(file), pos);
+
+ /* Check position not at end of file */
+ EXPECT_EQ(PREFIX(gzeof)(file), 0);
+ /* Read first hello, hello! string with gzfread */
+ strcpy((char*)uncompr, "garbages");
+ read = PREFIX(gzfread)(uncompr, uncompr_len, 1, file);
+ EXPECT_STREQ((const char *)uncompr, hello);
+
+ pos = PREFIX(gzoffset)(file);
+ EXPECT_GE(pos, 0);
+ EXPECT_EQ(pos, (compr_len + 10));
+
+ /* Trigger an error and clear it with gzclearerr */
+ PREFIX(gzfread)(uncompr, (size_t)-1, (size_t)-1, file);
+ PREFIX(gzerror)(file, &err);
+ EXPECT_NE(err, 0);
+
+ PREFIX(gzclearerr)(file);
+ PREFIX(gzerror)(file, &err);
+ EXPECT_EQ(err, 0);
+
+ PREFIX(gzclose)(file);
+
+ EXPECT_EQ(PREFIX(gzclose)(NULL), Z_STREAM_ERROR);
+ Z_UNUSED(read);
+#endif
+}
diff --git a/neozip/test/test_inflate_adler32.cc b/neozip/test/test_inflate_adler32.cc
new file mode 100644
index 0000000000..fb78bb1bfc
--- /dev/null
+++ b/neozip/test/test_inflate_adler32.cc
@@ -0,0 +1,50 @@
+/* GH-1066 - inflate small amount of data and validate with adler32 checksum. */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+const char* original = "The quick brown fox jumped over the lazy dog";
+
+z_const unsigned char compressed[] = {
+ 0x78, 0x9c, 0x0b, 0xc9, 0x48, 0x55, 0x28, 0x2c, 0xcd, 0x4c, 0xce, 0x56, 0x48,
+ 0x2a, 0xca, 0x2f, 0xcf, 0x53, 0x48, 0xcb, 0xaf, 0x50, 0xc8, 0x2a, 0xcd, 0x2d,
+ 0x48, 0x4d, 0x51, 0xc8, 0x2f, 0x4b, 0x2d, 0x52, 0x28, 0xc9, 0x48, 0x55, 0xc8,
+ 0x49, 0xac, 0xaa, 0x54, 0x48, 0xc9, 0x4f, 0x07, 0x00, 0x6b, 0x93, 0x10, 0x30
+};
+
+TEST(inflate, adler32) {
+ unsigned char uncompressed[1024];
+ PREFIX3(stream) strm;
+
+ memset(&strm, 0, sizeof(strm));
+
+ int err = PREFIX(inflateInit2)(&strm, 32 + MAX_WBITS);
+ EXPECT_EQ(err, Z_OK);
+
+ strm.next_in = compressed;
+ strm.avail_in = sizeof(compressed);
+ strm.next_out = uncompressed;
+ strm.avail_out = sizeof(uncompressed);
+
+ err = PREFIX(inflate)(&strm, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ EXPECT_EQ(strm.adler, 0x6b931030);
+
+ err = PREFIX(inflateEnd)(&strm);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_TRUE(memcmp(uncompressed, original, MIN(strm.total_out, strlen(original))) == 0);
+}
diff --git a/neozip/test/test_inflate_copy.cc b/neozip/test/test_inflate_copy.cc
new file mode 100644
index 0000000000..02eea2648a
--- /dev/null
+++ b/neozip/test/test_inflate_copy.cc
@@ -0,0 +1,31 @@
+/* test_inflate_copy.cc - Test copying inflate stream */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(inflate, copy_back_and_forth) {
+ PREFIX3(stream) d1_stream, d2_stream;
+ int err;
+
+ memset(&d1_stream, 0, sizeof(d1_stream));
+ err = PREFIX(inflateInit2)(&d1_stream, MAX_WBITS + 14);
+ ASSERT_EQ(err, Z_OK);
+ err = PREFIX(inflateCopy)(&d2_stream, &d1_stream);
+ ASSERT_EQ(err, Z_OK);
+ err = PREFIX(inflateEnd)(&d1_stream);
+ ASSERT_EQ(err, Z_OK);
+ err = PREFIX(inflateCopy)(&d1_stream, &d2_stream);
+ ASSERT_EQ(err, Z_OK);
+ err = PREFIX(inflateEnd)(&d1_stream);
+ ASSERT_EQ(err, Z_OK);
+ err = PREFIX(inflateEnd)(&d2_stream);
+ ASSERT_EQ(err, Z_OK);
+}
diff --git a/neozip/test/test_inflate_sync.cc b/neozip/test/test_inflate_sync.cc
new file mode 100644
index 0000000000..a79d867e68
--- /dev/null
+++ b/neozip/test/test_inflate_sync.cc
@@ -0,0 +1,75 @@
+/* test_inflate_sync.cc - Test inflateSync using full flush deflate and corrupted data */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(inflate, sync) {
+ PREFIX3(stream) c_stream, d_stream;
+ uint8_t compr[128], uncompr[128];
+ z_size_t compr_len = sizeof(compr), uncompr_len = sizeof(uncompr);
+ int err;
+
+ memset(&c_stream, 0, sizeof(c_stream));
+
+ /* build compressed stream with full flush */
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ EXPECT_EQ(err, Z_OK);
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.next_out = compr;
+ c_stream.avail_in = 3;
+ c_stream.avail_out = (uint32_t)compr_len;
+
+ err = PREFIX(deflate)(&c_stream, Z_FULL_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+
+ /* force an error in first compressed block */
+ compr[3]++;
+ c_stream.avail_in = hello_len-3;
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ compr_len = (z_size_t)c_stream.total_out;
+
+ memset(&d_stream, 0, sizeof(d_stream));
+ /* just read the zlib header */
+ d_stream.next_in = compr;
+ d_stream.avail_in = 2;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ d_stream.next_out = uncompr;
+ d_stream.avail_out = (uint32_t)uncompr_len;
+
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+
+ /* read all compressed data, but skip damaged part */
+ d_stream.avail_in = (uint32_t)compr_len-2;
+ err = PREFIX(inflateSync)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ err = PREFIX(inflate)(&d_stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+}
diff --git a/neozip/test/test_large_buffers.cc b/neozip/test/test_large_buffers.cc
new file mode 100644
index 0000000000..3c1208140d
--- /dev/null
+++ b/neozip/test/test_large_buffers.cc
@@ -0,0 +1,87 @@
+/* test_large_buffers.cc - Test deflate() and inflate() with large buffers */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+#include <time.h>
+
+#include <gtest/gtest.h>
+
+#include "test_shared.h"
+
+#define COMPR_BUFFER_SIZE (48 * 1024)
+#define UNCOMPR_BUFFER_SIZE (32 * 1024)
+#define UNCOMPR_RAND_SIZE (8 * 1024)
+
+TEST(deflate, large_buffers) {
+ PREFIX3(stream) c_stream, d_stream;
+ uint8_t *compr, *uncompr;
+ uint32_t compr_len, uncompr_len;
+ int32_t i;
+ time_t now;
+ int err;
+
+ memset(&c_stream, 0, sizeof(c_stream));
+ memset(&d_stream, 0, sizeof(d_stream));
+
+ compr = (uint8_t *)calloc(1, COMPR_BUFFER_SIZE);
+ ASSERT_TRUE(compr != NULL);
+ uncompr = (uint8_t *)calloc(1, UNCOMPR_BUFFER_SIZE);
+ ASSERT_TRUE(uncompr != NULL);
+
+ compr_len = COMPR_BUFFER_SIZE;
+ uncompr_len = UNCOMPR_BUFFER_SIZE;
+
+ srand((unsigned)time(&now));
+ for (i = 0; i < UNCOMPR_RAND_SIZE; i++)
+ uncompr[i] = (uint8_t)(rand() % 256);
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ EXPECT_EQ(err, Z_OK);
+
+ c_stream.next_out = compr;
+ c_stream.avail_out = compr_len;
+ c_stream.next_in = uncompr;
+ c_stream.avail_in = uncompr_len;
+
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+ EXPECT_EQ(c_stream.avail_in, 0);
+
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ d_stream.next_in = compr;
+ d_stream.avail_in = compr_len;
+ d_stream.next_out = uncompr;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ for (;;) {
+ d_stream.next_out = uncompr; /* discard the output */
+ d_stream.avail_out = uncompr_len;
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ if (err == Z_STREAM_END) break;
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_EQ(d_stream.total_out, uncompr_len);
+
+ free(compr);
+ free(uncompr);
+}
diff --git a/neozip/test/test_main.cc b/neozip/test/test_main.cc
new file mode 100644
index 0000000000..994a3ef389
--- /dev/null
+++ b/neozip/test/test_main.cc
@@ -0,0 +1,22 @@
+/* test_test.cc - Main entry point for test framework */
+
+#include <stdio.h>
+
+#include "gtest/gtest.h"
+
+extern "C" {
+# include "zbuild.h"
+# include "test_cpu_features.h"
+# ifndef DISABLE_RUNTIME_CPU_DETECTION
+ struct cpu_features test_cpu_features;
+# endif
+}
+
+GTEST_API_ int main(int argc, char **argv) {
+ printf("Running main() from %s\n", __FILE__);
+#ifndef DISABLE_RUNTIME_CPU_DETECTION
+ cpu_check_features(&test_cpu_features);
+#endif
+ testing::InitGoogleTest(&argc, argv);
+ return RUN_ALL_TESTS();
+}
diff --git a/neozip/test/test_raw.cc b/neozip/test/test_raw.cc
new file mode 100644
index 0000000000..a013d4bb47
--- /dev/null
+++ b/neozip/test/test_raw.cc
@@ -0,0 +1,58 @@
+/* test_raw.cc - Test raw streams. */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <gtest/gtest.h>
+
+TEST(raw, basic) {
+ PREFIX3(stream) stream;
+ int err;
+ unsigned char plain[512];
+ size_t i;
+ unsigned char compr[sizeof(plain)];
+ unsigned int compr_len;
+ unsigned char plain_again[sizeof(plain)];
+
+ memset(&stream, 0, sizeof(stream));
+ err = PREFIX(deflateInit2)(&stream, Z_BEST_SPEED, Z_DEFLATED, -15, 8, Z_DEFAULT_STRATEGY);
+ EXPECT_EQ(err, Z_OK);
+
+ for (i = 0; i < sizeof(plain); i++)
+ plain[i] = (unsigned char)i;
+ stream.adler = 0x12345678;
+ stream.next_in = plain;
+ stream.avail_in = (uint32_t)sizeof(plain);
+ stream.next_out = compr;
+ stream.avail_out = (uint32_t)sizeof(compr);
+ err = PREFIX(deflate)(&stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+ EXPECT_EQ(stream.adler, 0x12345678);
+ compr_len = sizeof(compr) - stream.avail_out;
+
+ err = PREFIX(deflateEnd)(&stream);
+ EXPECT_EQ(err, Z_OK);
+
+ memset(&stream, 0, sizeof(stream));
+ err = PREFIX(inflateInit2)(&stream, -MAX_WBITS);
+ EXPECT_EQ(err, Z_OK);
+
+ stream.adler = 0x87654321;
+ stream.next_in = compr;
+ stream.avail_in = compr_len;
+ stream.next_out = plain_again;
+ stream.avail_out = (unsigned int)sizeof(plain_again);
+
+ err = PREFIX(inflate)(&stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_STREAM_END);
+ EXPECT_EQ(stream.adler, 0x87654321);
+
+ err = PREFIX(inflateEnd)(&stream);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_TRUE(memcmp(plain_again, plain, sizeof(plain)) == 0);
+}
diff --git a/neozip/test/test_shared.h b/neozip/test/test_shared.h
new file mode 100644
index 0000000000..616f57342c
--- /dev/null
+++ b/neozip/test/test_shared.h
@@ -0,0 +1,18 @@
+#ifndef TEST_SHARED_H
+#define TEST_SHARED_H
+
+/* Test definitions that can be used in the original zlib build environment. */
+
+/* "hello world" would be more standard, but the repeated "hello"
+ * stresses the compression code better, sorry...
+ */
+static const char hello[] = "hello, hello!";
+static const int hello_len = sizeof(hello);
+
+/* Clang static analyzer doesn't understand googletest's ASSERT_TRUE, so we need to tell that it's like assert() */
+#ifdef __clang_analyzer__
+# undef ASSERT_TRUE
+# define ASSERT_TRUE assert
+#endif
+
+#endif
diff --git a/neozip/test/test_shared_ng.h b/neozip/test/test_shared_ng.h
new file mode 100644
index 0000000000..f87ef027e2
--- /dev/null
+++ b/neozip/test/test_shared_ng.h
@@ -0,0 +1,23 @@
+#ifndef TEST_SHARED_NG_H
+#define TEST_SHARED_NG_H
+
+#include "test_shared.h"
+
+/* Test definitions that can only be used in the zlib-ng build environment. */
+
+static inline int deflate_prime_32(PREFIX3(stream) *stream, uint32_t value) {
+ int err;
+
+#ifndef TEST_STOCK_ZLIB
+ err = PREFIX(deflatePrime)(stream, 32, value);
+#else
+ /* zlib's deflatePrime() takes at most 16 bits */
+ err = PREFIX(deflatePrime)(stream, 16, value & 0xffff);
+ if (err != Z_OK) return err;
+ err = PREFIX(deflatePrime)(stream, 16, value >> 16);
+#endif
+
+ return err;
+}
+
+#endif
diff --git a/neozip/test/test_small_buffers.cc b/neozip/test/test_small_buffers.cc
new file mode 100644
index 0000000000..bb3449fd88
--- /dev/null
+++ b/neozip/test/test_small_buffers.cc
@@ -0,0 +1,69 @@
+/* test_small_buffers.cc - Test deflate() and inflate() with small buffers */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(deflate, small_buffers) {
+ PREFIX3(stream) c_stream, d_stream;
+ uint8_t compr[128], uncompr[128];
+ z_size_t compr_len = sizeof(compr), uncompr_len = sizeof(uncompr);
+ int err;
+
+ memset(&c_stream, 0, sizeof(c_stream));
+ memset(&d_stream, 0, sizeof(d_stream));
+
+ err = PREFIX(deflateInit)(&c_stream, Z_DEFAULT_COMPRESSION);
+ EXPECT_EQ(err, Z_OK);
+
+ c_stream.next_in = (z_const unsigned char *)hello;
+ c_stream.next_out = compr;
+
+ while (c_stream.total_in != hello_len && c_stream.total_out < compr_len) {
+ c_stream.avail_in = c_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(deflate)(&c_stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_OK);
+ }
+ /* Finish the stream, still forcing small buffers */
+ for (;;) {
+ c_stream.avail_out = 1;
+ err = PREFIX(deflate)(&c_stream, Z_FINISH);
+ if (err == Z_STREAM_END) break;
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ err = PREFIX(deflateEnd)(&c_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ strcpy((char*)uncompr, "garbage");
+
+ d_stream.next_in = compr;
+ d_stream.next_out = uncompr;
+
+ err = PREFIX(inflateInit)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ while (d_stream.total_out < uncompr_len && d_stream.total_in < compr_len) {
+ d_stream.avail_in = d_stream.avail_out = 1; /* force small buffers */
+ err = PREFIX(inflate)(&d_stream, Z_NO_FLUSH);
+ if (err == Z_STREAM_END) break;
+ EXPECT_EQ(err, Z_OK);
+ }
+
+ err = PREFIX(inflateEnd)(&d_stream);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_STREQ((char*)uncompr, hello);
+}
diff --git a/neozip/test/test_small_window.cc b/neozip/test/test_small_window.cc
new file mode 100644
index 0000000000..e351efac0d
--- /dev/null
+++ b/neozip/test/test_small_window.cc
@@ -0,0 +1,67 @@
+/* test_small_window.cc - Test deflate() and inflate() with a small window and a preset dictionary */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <gtest/gtest.h>
+
+TEST(small_window, basic) {
+ PREFIX3(stream) stream;
+ int err;
+ unsigned char plain[128];
+ unsigned char dictionary1[(1 << 9) - sizeof(plain) / 2];
+ size_t i;
+ unsigned char compr[sizeof(plain)];
+ unsigned int compr_len;
+ unsigned char plain_again[sizeof(plain)];
+
+ memset(&stream, 0, sizeof(stream));
+ err = PREFIX(deflateInit2)(&stream, Z_BEST_COMPRESSION, Z_DEFLATED, -9, 8, Z_DEFAULT_STRATEGY);
+ EXPECT_EQ(err, Z_OK);
+
+ /* Use a large dictionary that is loaded in two parts */
+ memset(dictionary1, 'a', sizeof(dictionary1));
+ err = PREFIX(deflateSetDictionary)(&stream, dictionary1, (unsigned int)sizeof(dictionary1));
+ EXPECT_EQ(err, Z_OK);
+ for (i = 0; i < sizeof(plain); i++)
+ plain[i] = (unsigned char)i;
+ err = PREFIX(deflateSetDictionary)(&stream, plain, (unsigned int)sizeof(plain));
+ EXPECT_EQ(err, Z_OK);
+
+ stream.next_in = plain;
+ stream.avail_in = (uint32_t)sizeof(plain);
+ stream.next_out = compr;
+ stream.avail_out = (uint32_t)sizeof(compr);
+ err = PREFIX(deflate)(&stream, Z_FINISH);
+ EXPECT_EQ(err, Z_STREAM_END);
+ compr_len = sizeof(compr) - stream.avail_out;
+
+ err = PREFIX(deflateEnd)(&stream);
+ EXPECT_EQ(err, Z_OK);
+
+ memset(&stream, 0, sizeof(stream));
+ err = PREFIX(inflateInit2)(&stream, -9);
+ EXPECT_EQ(err, Z_OK);
+
+ err = PREFIX(inflateSetDictionary)(&stream, dictionary1, (unsigned int)sizeof(dictionary1));
+ EXPECT_EQ(err, Z_OK);
+ err = PREFIX(inflateSetDictionary)(&stream, plain, (unsigned int)sizeof(plain));
+ EXPECT_EQ(err, Z_OK);
+
+ stream.next_in = compr;
+ stream.avail_in = compr_len;
+ stream.next_out = plain_again;
+ stream.avail_out = (unsigned int)sizeof(plain_again);
+
+ err = PREFIX(inflate)(&stream, Z_NO_FLUSH);
+ EXPECT_EQ(err, Z_STREAM_END);
+
+ err = PREFIX(inflateEnd)(&stream);
+ EXPECT_EQ(err, Z_OK);
+
+ EXPECT_TRUE(memcmp(plain_again, plain, sizeof(plain)) == 0);
+}
diff --git a/neozip/test/test_version.cc b/neozip/test/test_version.cc
new file mode 100644
index 0000000000..fda87904e0
--- /dev/null
+++ b/neozip/test/test_version.cc
@@ -0,0 +1,27 @@
+/* test_version.cc - Test zVersion() and zlibCompileFlags() */
+
+#include "zbuild.h"
+#ifdef ZLIB_COMPAT
+# include "zlib.h"
+#else
+# include "zlib-ng.h"
+#endif
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "test_shared.h"
+
+#include <gtest/gtest.h>
+
+TEST(version, basic) {
+ static const char *my_version = PREFIX2(VERSION);
+
+ EXPECT_EQ(zVersion()[0], my_version[0]);
+ EXPECT_STREQ(zVersion(), PREFIX2(VERSION));
+
+ printf("zlib-ng version %s = 0x%08lx, compile flags = 0x%lx\n",
+ ZLIBNG_VERSION, ZLIBNG_VERNUM, PREFIX(zlibCompileFlags)());
+}