Full Code of alibaba/atlas for AI

master c20c5b83f67b cached
4239 files
37.8 MB
10.2M tokens
27769 symbols
1 requests
Copy disabled (too large) Download .txt
Showing preview only (40,622K chars total). Download the full file to get everything.
Repository: alibaba/atlas
Branch: master
Commit: c20c5b83f67b
Files: 4239
Total size: 37.8 MB

Directory structure:
gitextract_as4hsawy/

├── .github/
│   └── ISSUE_TEMPLATE.md
├── .gitignore
├── .gitmodules
├── CONTRIBUTING.md
├── LICENSE
├── NOTICE
├── README.md
├── _config.yml
├── atlas-aapt/
│   ├── .gitignore
│   ├── CMakeLists.txt
│   ├── Makefile
│   ├── README.md
│   ├── README.zh-cn.md
│   ├── UpdateAndroidSource.sh
│   ├── bionic/
│   │   └── libc/
│   │       └── include/
│   │           ├── alloca.h
│   │           ├── android/
│   │           │   ├── api-level.h
│   │           │   ├── dlext.h
│   │           │   ├── legacy_errno_inlines.h
│   │           │   ├── legacy_signal_inlines.h
│   │           │   ├── legacy_stdlib_inlines.h
│   │           │   ├── legacy_sys_atomics_inlines.h
│   │           │   ├── legacy_sys_stat_inlines.h
│   │           │   ├── legacy_termios_inlines.h
│   │           │   └── set_abort_message.h
│   │           ├── ar.h
│   │           ├── arpa/
│   │           │   ├── inet.h
│   │           │   ├── nameser.h
│   │           │   ├── nameser_compat.h
│   │           │   └── telnet.h
│   │           ├── assert.h
│   │           ├── bits/
│   │           │   ├── lockf.h
│   │           │   ├── posix_limits.h
│   │           │   ├── pthread_types.h
│   │           │   ├── timespec.h
│   │           │   └── wchar_limits.h
│   │           ├── byteswap.h
│   │           ├── ctype.h
│   │           ├── dirent.h
│   │           ├── dlfcn.h
│   │           ├── elf.h
│   │           ├── endian.h
│   │           ├── err.h
│   │           ├── errno.h
│   │           ├── error.h
│   │           ├── fcntl.h
│   │           ├── features.h
│   │           ├── fnmatch.h
│   │           ├── fts.h
│   │           ├── ftw.h
│   │           ├── getopt.h
│   │           ├── grp.h
│   │           ├── ifaddrs.h
│   │           ├── inttypes.h
│   │           ├── lastlog.h
│   │           ├── libgen.h
│   │           ├── limits.h
│   │           ├── link.h
│   │           ├── locale.h
│   │           ├── machine/
│   │           │   ├── endian.h
│   │           │   └── ieee.h
│   │           ├── malloc.h
│   │           ├── memory.h
│   │           ├── mntent.h
│   │           ├── net/
│   │           │   ├── ethernet.h
│   │           │   ├── ethertypes.h
│   │           │   ├── if.h
│   │           │   ├── if_arp.h
│   │           │   ├── if_ether.h
│   │           │   ├── if_ieee1394.h
│   │           │   ├── if_packet.h
│   │           │   ├── if_types.h
│   │           │   └── route.h
│   │           ├── netdb.h
│   │           ├── netinet/
│   │           │   ├── ether.h
│   │           │   ├── icmp6.h
│   │           │   ├── if_ether.h
│   │           │   ├── in.h
│   │           │   ├── in6.h
│   │           │   ├── in_systm.h
│   │           │   ├── ip.h
│   │           │   ├── ip6.h
│   │           │   ├── ip_icmp.h
│   │           │   ├── tcp.h
│   │           │   └── udp.h
│   │           ├── netpacket/
│   │           │   └── packet.h
│   │           ├── nsswitch.h
│   │           ├── paths.h
│   │           ├── poll.h
│   │           ├── pthread.h
│   │           ├── pty.h
│   │           ├── pwd.h
│   │           ├── regex.h
│   │           ├── resolv.h
│   │           ├── sched.h
│   │           ├── search.h
│   │           ├── semaphore.h
│   │           ├── setjmp.h
│   │           ├── sgtty.h
│   │           ├── signal.h
│   │           ├── stdatomic.h
│   │           ├── stdint.h
│   │           ├── stdio.h
│   │           ├── stdio_ext.h
│   │           ├── stdlib.h
│   │           ├── string.h
│   │           ├── strings.h
│   │           ├── sys/
│   │           │   ├── _errdefs.h
│   │           │   ├── _sigdefs.h
│   │           │   ├── _system_properties.h
│   │           │   ├── atomics.h
│   │           │   ├── auxv.h
│   │           │   ├── cachectl.h
│   │           │   ├── capability.h
│   │           │   ├── cdefs.h
│   │           │   ├── endian.h
│   │           │   ├── epoll.h
│   │           │   ├── errno.h
│   │           │   ├── eventfd.h
│   │           │   ├── fcntl.h
│   │           │   ├── file.h
│   │           │   ├── fsuid.h
│   │           │   ├── glibc-syscalls.h
│   │           │   ├── inotify.h
│   │           │   ├── ioctl.h
│   │           │   ├── ioctl_compat.h
│   │           │   ├── ipc.h
│   │           │   ├── klog.h
│   │           │   ├── limits.h
│   │           │   ├── mman.h
│   │           │   ├── mount.h
│   │           │   ├── msg.h
│   │           │   ├── param.h
│   │           │   ├── personality.h
│   │           │   ├── poll.h
│   │           │   ├── prctl.h
│   │           │   ├── procfs.h
│   │           │   ├── ptrace.h
│   │           │   ├── queue.h
│   │           │   ├── reboot.h
│   │           │   ├── reg.h
│   │           │   ├── resource.h
│   │           │   ├── select.h
│   │           │   ├── sem.h
│   │           │   ├── sendfile.h
│   │           │   ├── signal.h
│   │           │   ├── signalfd.h
│   │           │   ├── socket.h
│   │           │   ├── socketcalls.h
│   │           │   ├── stat.h
│   │           │   ├── statfs.h
│   │           │   ├── statvfs.h
│   │           │   ├── swap.h
│   │           │   ├── syscall.h
│   │           │   ├── sysconf.h
│   │           │   ├── sysinfo.h
│   │           │   ├── syslimits.h
│   │           │   ├── syslog.h
│   │           │   ├── sysmacros.h
│   │           │   ├── system_properties.h
│   │           │   ├── time.h
│   │           │   ├── timerfd.h
│   │           │   ├── times.h
│   │           │   ├── timex.h
│   │           │   ├── ttychars.h
│   │           │   ├── ttydefaults.h
│   │           │   ├── ttydev.h
│   │           │   ├── types.h
│   │           │   ├── ucontext.h
│   │           │   ├── uio.h
│   │           │   ├── un.h
│   │           │   ├── unistd.h
│   │           │   ├── user.h
│   │           │   ├── utime.h
│   │           │   ├── utsname.h
│   │           │   ├── vfs.h
│   │           │   ├── vt.h
│   │           │   ├── wait.h
│   │           │   └── xattr.h
│   │           ├── syscall.h
│   │           ├── sysexits.h
│   │           ├── syslog.h
│   │           ├── termio.h
│   │           ├── termios.h
│   │           ├── time.h
│   │           ├── time64.h
│   │           ├── uchar.h
│   │           ├── ucontext.h
│   │           ├── unistd.h
│   │           ├── util.h
│   │           ├── utime.h
│   │           ├── utmp.h
│   │           ├── wait.h
│   │           ├── wchar.h
│   │           ├── wctype.h
│   │           └── xlocale.h
│   ├── build_ShakaAapt_all_in_linux.sh
│   ├── build_ShakaAapt_all_in_maxos.sh
│   ├── external/
│   │   ├── compiler-rt/
│   │   │   ├── .arcconfig
│   │   │   ├── .gitignore
│   │   │   ├── Android.bp
│   │   │   ├── Android.mk
│   │   │   ├── CMakeLists.txt
│   │   │   ├── CODE_OWNERS.TXT
│   │   │   ├── CREDITS.TXT
│   │   │   ├── LICENSE.TXT
│   │   │   ├── MODULE_LICENSE_MIT
│   │   │   ├── Makefile
│   │   │   ├── NOTICE
│   │   │   ├── README.android
│   │   │   ├── README.txt
│   │   │   ├── cmake/
│   │   │   │   ├── Modules/
│   │   │   │   │   ├── AddCompilerRT.cmake
│   │   │   │   │   ├── CompilerRTCompile.cmake
│   │   │   │   │   ├── CompilerRTDarwinUtils.cmake
│   │   │   │   │   ├── CompilerRTLink.cmake
│   │   │   │   │   ├── CompilerRTUtils.cmake
│   │   │   │   │   └── SanitizerUtils.cmake
│   │   │   │   └── config-ix.cmake
│   │   │   ├── include/
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   └── sanitizer/
│   │   │   │       ├── allocator_interface.h
│   │   │   │       ├── asan_interface.h
│   │   │   │       ├── common_interface_defs.h
│   │   │   │       ├── coverage_interface.h
│   │   │   │       ├── dfsan_interface.h
│   │   │   │       ├── linux_syscall_hooks.h
│   │   │   │       ├── lsan_interface.h
│   │   │   │       ├── msan_interface.h
│   │   │   │       └── tsan_interface_atomic.h
│   │   │   ├── lib/
│   │   │   │   ├── BlocksRuntime/
│   │   │   │   │   ├── Block.h
│   │   │   │   │   ├── Block_private.h
│   │   │   │   │   ├── data.c
│   │   │   │   │   └── runtime.c
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   ├── Makefile.mk
│   │   │   │   ├── asan/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── Android.mk
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   ├── README.txt
│   │   │   │   │   ├── asan.syms.extra
│   │   │   │   │   ├── asan_activation.cc
│   │   │   │   │   ├── asan_activation.h
│   │   │   │   │   ├── asan_activation_flags.inc
│   │   │   │   │   ├── asan_allocator.cc
│   │   │   │   │   ├── asan_allocator.h
│   │   │   │   │   ├── asan_android_stub.cc
│   │   │   │   │   ├── asan_blacklist.txt
│   │   │   │   │   ├── asan_debugging.cc
│   │   │   │   │   ├── asan_fake_stack.cc
│   │   │   │   │   ├── asan_fake_stack.h
│   │   │   │   │   ├── asan_flags.cc
│   │   │   │   │   ├── asan_flags.h
│   │   │   │   │   ├── asan_flags.inc
│   │   │   │   │   ├── asan_globals.cc
│   │   │   │   │   ├── asan_init_version.h
│   │   │   │   │   ├── asan_interceptors.cc
│   │   │   │   │   ├── asan_interceptors.h
│   │   │   │   │   ├── asan_interface_internal.h
│   │   │   │   │   ├── asan_internal.h
│   │   │   │   │   ├── asan_linux.cc
│   │   │   │   │   ├── asan_lock.h
│   │   │   │   │   ├── asan_mac.cc
│   │   │   │   │   ├── asan_malloc_linux.cc
│   │   │   │   │   ├── asan_malloc_mac.cc
│   │   │   │   │   ├── asan_malloc_win.cc
│   │   │   │   │   ├── asan_mapping.h
│   │   │   │   │   ├── asan_new_delete.cc
│   │   │   │   │   ├── asan_poisoning.cc
│   │   │   │   │   ├── asan_poisoning.h
│   │   │   │   │   ├── asan_posix.cc
│   │   │   │   │   ├── asan_preinit.cc
│   │   │   │   │   ├── asan_report.cc
│   │   │   │   │   ├── asan_report.h
│   │   │   │   │   ├── asan_rtl.cc
│   │   │   │   │   ├── asan_stack.cc
│   │   │   │   │   ├── asan_stack.h
│   │   │   │   │   ├── asan_stats.cc
│   │   │   │   │   ├── asan_stats.h
│   │   │   │   │   ├── asan_suppressions.cc
│   │   │   │   │   ├── asan_suppressions.h
│   │   │   │   │   ├── asan_thread.cc
│   │   │   │   │   ├── asan_thread.h
│   │   │   │   │   ├── asan_win.cc
│   │   │   │   │   ├── asan_win_dll_thunk.cc
│   │   │   │   │   ├── asan_win_dynamic_runtime_thunk.cc
│   │   │   │   │   ├── asanwrapper.cc
│   │   │   │   │   ├── scripts/
│   │   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   │   ├── asan_device_setup
│   │   │   │   │   │   ├── asan_symbolize.py
│   │   │   │   │   │   └── symbolize.py
│   │   │   │   │   └── tests/
│   │   │   │   │       ├── CMakeLists.txt
│   │   │   │   │       ├── asan_asm_test.cc
│   │   │   │   │       ├── asan_benchmarks_test.cc
│   │   │   │   │       ├── asan_exceptions_test.cc
│   │   │   │   │       ├── asan_fake_stack_test.cc
│   │   │   │   │       ├── asan_globals_test.cc
│   │   │   │   │       ├── asan_interface_test.cc
│   │   │   │   │       ├── asan_mac_test.cc
│   │   │   │   │       ├── asan_mac_test.h
│   │   │   │   │       ├── asan_mac_test_helpers.mm
│   │   │   │   │       ├── asan_mem_test.cc
│   │   │   │   │       ├── asan_noinst_test.cc
│   │   │   │   │       ├── asan_oob_test.cc
│   │   │   │   │       ├── asan_racy_double_free_test.cc
│   │   │   │   │       ├── asan_str_test.cc
│   │   │   │   │       ├── asan_test.cc
│   │   │   │   │       ├── asan_test.ignore
│   │   │   │   │       ├── asan_test_config.h
│   │   │   │   │       ├── asan_test_main.cc
│   │   │   │   │       └── asan_test_utils.h
│   │   │   │   ├── builtins/
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── Darwin-excludes/
│   │   │   │   │   │   ├── 10.4-x86_64.txt
│   │   │   │   │   │   ├── 10.4.txt
│   │   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   │   ├── README.TXT
│   │   │   │   │   │   ├── ios-armv7.txt
│   │   │   │   │   │   ├── ios-armv7s.txt
│   │   │   │   │   │   ├── ios.txt
│   │   │   │   │   │   ├── ios6-armv7.txt
│   │   │   │   │   │   ├── ios6-armv7s.txt
│   │   │   │   │   │   ├── ios7-arm64.txt
│   │   │   │   │   │   ├── iossim-i386.txt
│   │   │   │   │   │   ├── iossim-x86_64.txt
│   │   │   │   │   │   ├── iossim.txt
│   │   │   │   │   │   ├── osx-i386.txt
│   │   │   │   │   │   ├── osx-x86_64.txt
│   │   │   │   │   │   └── osx.txt
│   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   ├── README.txt
│   │   │   │   │   ├── absvdi2.c
│   │   │   │   │   ├── absvsi2.c
│   │   │   │   │   ├── absvti2.c
│   │   │   │   │   ├── adddf3.c
│   │   │   │   │   ├── addsf3.c
│   │   │   │   │   ├── addtf3.c
│   │   │   │   │   ├── addvdi3.c
│   │   │   │   │   ├── addvsi3.c
│   │   │   │   │   ├── addvti3.c
│   │   │   │   │   ├── apple_versioning.c
│   │   │   │   │   ├── arm/
│   │   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   │   ├── adddf3vfp.S
│   │   │   │   │   │   ├── addsf3vfp.S
│   │   │   │   │   │   ├── aeabi_cdcmp.S
│   │   │   │   │   │   ├── aeabi_cdcmpeq_check_nan.c
│   │   │   │   │   │   ├── aeabi_cfcmp.S
│   │   │   │   │   │   ├── aeabi_cfcmpeq_check_nan.c
│   │   │   │   │   │   ├── aeabi_dcmp.S
│   │   │   │   │   │   ├── aeabi_div0.c
│   │   │   │   │   │   ├── aeabi_drsub.c
│   │   │   │   │   │   ├── aeabi_fcmp.S
│   │   │   │   │   │   ├── aeabi_frsub.c
│   │   │   │   │   │   ├── aeabi_idivmod.S
│   │   │   │   │   │   ├── aeabi_ldivmod.S
│   │   │   │   │   │   ├── aeabi_memcmp.S
│   │   │   │   │   │   ├── aeabi_memcpy.S
│   │   │   │   │   │   ├── aeabi_memmove.S
│   │   │   │   │   │   ├── aeabi_memset.S
│   │   │   │   │   │   ├── aeabi_uidivmod.S
│   │   │   │   │   │   ├── aeabi_uldivmod.S
│   │   │   │   │   │   ├── bswapdi2.S
│   │   │   │   │   │   ├── bswapsi2.S
│   │   │   │   │   │   ├── clzdi2.S
│   │   │   │   │   │   ├── clzsi2.S
│   │   │   │   │   │   ├── comparesf2.S
│   │   │   │   │   │   ├── divdf3vfp.S
│   │   │   │   │   │   ├── divmodsi4.S
│   │   │   │   │   │   ├── divsf3vfp.S
│   │   │   │   │   │   ├── divsi3.S
│   │   │   │   │   │   ├── eqdf2vfp.S
│   │   │   │   │   │   ├── eqsf2vfp.S
│   │   │   │   │   │   ├── extendsfdf2vfp.S
│   │   │   │   │   │   ├── fixdfsivfp.S
│   │   │   │   │   │   ├── fixsfsivfp.S
│   │   │   │   │   │   ├── fixunsdfsivfp.S
│   │   │   │   │   │   ├── fixunssfsivfp.S
│   │   │   │   │   │   ├── floatsidfvfp.S
│   │   │   │   │   │   ├── floatsisfvfp.S
│   │   │   │   │   │   ├── floatunssidfvfp.S
│   │   │   │   │   │   ├── floatunssisfvfp.S
│   │   │   │   │   │   ├── gedf2vfp.S
│   │   │   │   │   │   ├── gesf2vfp.S
│   │   │   │   │   │   ├── gtdf2vfp.S
│   │   │   │   │   │   ├── gtsf2vfp.S
│   │   │   │   │   │   ├── ledf2vfp.S
│   │   │   │   │   │   ├── lesf2vfp.S
│   │   │   │   │   │   ├── ltdf2vfp.S
│   │   │   │   │   │   ├── ltsf2vfp.S
│   │   │   │   │   │   ├── modsi3.S
│   │   │   │   │   │   ├── muldf3vfp.S
│   │   │   │   │   │   ├── mulsf3vfp.S
│   │   │   │   │   │   ├── nedf2vfp.S
│   │   │   │   │   │   ├── negdf2vfp.S
│   │   │   │   │   │   ├── negsf2vfp.S
│   │   │   │   │   │   ├── nesf2vfp.S
│   │   │   │   │   │   ├── restore_vfp_d8_d15_regs.S
│   │   │   │   │   │   ├── save_vfp_d8_d15_regs.S
│   │   │   │   │   │   ├── softfloat-alias.list
│   │   │   │   │   │   ├── subdf3vfp.S
│   │   │   │   │   │   ├── subsf3vfp.S
│   │   │   │   │   │   ├── switch16.S
│   │   │   │   │   │   ├── switch32.S
│   │   │   │   │   │   ├── switch8.S
│   │   │   │   │   │   ├── switchu8.S
│   │   │   │   │   │   ├── sync-ops.h
│   │   │   │   │   │   ├── sync_fetch_and_add_4.S
│   │   │   │   │   │   ├── sync_fetch_and_add_8.S
│   │   │   │   │   │   ├── sync_fetch_and_and_4.S
│   │   │   │   │   │   ├── sync_fetch_and_and_8.S
│   │   │   │   │   │   ├── sync_fetch_and_max_4.S
│   │   │   │   │   │   ├── sync_fetch_and_max_8.S
│   │   │   │   │   │   ├── sync_fetch_and_min_4.S
│   │   │   │   │   │   ├── sync_fetch_and_min_8.S
│   │   │   │   │   │   ├── sync_fetch_and_nand_4.S
│   │   │   │   │   │   ├── sync_fetch_and_nand_8.S
│   │   │   │   │   │   ├── sync_fetch_and_or_4.S
│   │   │   │   │   │   ├── sync_fetch_and_or_8.S
│   │   │   │   │   │   ├── sync_fetch_and_sub_4.S
│   │   │   │   │   │   ├── sync_fetch_and_sub_8.S
│   │   │   │   │   │   ├── sync_fetch_and_umax_4.S
│   │   │   │   │   │   ├── sync_fetch_and_umax_8.S
│   │   │   │   │   │   ├── sync_fetch_and_umin_4.S
│   │   │   │   │   │   ├── sync_fetch_and_umin_8.S
│   │   │   │   │   │   ├── sync_fetch_and_xor_4.S
│   │   │   │   │   │   ├── sync_fetch_and_xor_8.S
│   │   │   │   │   │   ├── sync_synchronize.S
│   │   │   │   │   │   ├── truncdfsf2vfp.S
│   │   │   │   │   │   ├── udivmodsi4.S
│   │   │   │   │   │   ├── udivsi3.S
│   │   │   │   │   │   ├── umodsi3.S
│   │   │   │   │   │   ├── unorddf2vfp.S
│   │   │   │   │   │   └── unordsf2vfp.S
│   │   │   │   │   ├── arm64/
│   │   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   │   └── dummy.c
│   │   │   │   │   ├── armv6m/
│   │   │   │   │   │   └── Makefile.mk
│   │   │   │   │   ├── ashldi3.c
│   │   │   │   │   ├── ashlti3.c
│   │   │   │   │   ├── ashrdi3.c
│   │   │   │   │   ├── ashrti3.c
│   │   │   │   │   ├── assembly.h
│   │   │   │   │   ├── atomic.c
│   │   │   │   │   ├── atomic_flag_clear.c
│   │   │   │   │   ├── atomic_flag_clear_explicit.c
│   │   │   │   │   ├── atomic_flag_test_and_set.c
│   │   │   │   │   ├── atomic_flag_test_and_set_explicit.c
│   │   │   │   │   ├── atomic_signal_fence.c
│   │   │   │   │   ├── atomic_thread_fence.c
│   │   │   │   │   ├── clear_cache.c
│   │   │   │   │   ├── clzdi2.c
│   │   │   │   │   ├── clzsi2.c
│   │   │   │   │   ├── clzti2.c
│   │   │   │   │   ├── cmpdi2.c
│   │   │   │   │   ├── cmpti2.c
│   │   │   │   │   ├── comparedf2.c
│   │   │   │   │   ├── comparesf2.c
│   │   │   │   │   ├── comparetf2.c
│   │   │   │   │   ├── ctzdi2.c
│   │   │   │   │   ├── ctzsi2.c
│   │   │   │   │   ├── ctzti2.c
│   │   │   │   │   ├── divdc3.c
│   │   │   │   │   ├── divdf3.c
│   │   │   │   │   ├── divdi3.c
│   │   │   │   │   ├── divmoddi4.c
│   │   │   │   │   ├── divmodsi4.c
│   │   │   │   │   ├── divsc3.c
│   │   │   │   │   ├── divsf3.c
│   │   │   │   │   ├── divsi3.c
│   │   │   │   │   ├── divtc3.c
│   │   │   │   │   ├── divtf3.c
│   │   │   │   │   ├── divti3.c
│   │   │   │   │   ├── divxc3.c
│   │   │   │   │   ├── emutls.c
│   │   │   │   │   ├── enable_execute_stack.c
│   │   │   │   │   ├── eprintf.c
│   │   │   │   │   ├── extenddftf2.c
│   │   │   │   │   ├── extendhfsf2.c
│   │   │   │   │   ├── extendsfdf2.c
│   │   │   │   │   ├── extendsftf2.c
│   │   │   │   │   ├── ffsdi2.c
│   │   │   │   │   ├── ffsti2.c
│   │   │   │   │   ├── fixdfdi.c
│   │   │   │   │   ├── fixdfsi.c
│   │   │   │   │   ├── fixdfti.c
│   │   │   │   │   ├── fixsfdi.c
│   │   │   │   │   ├── fixsfsi.c
│   │   │   │   │   ├── fixsfti.c
│   │   │   │   │   ├── fixtfdi.c
│   │   │   │   │   ├── fixtfsi.c
│   │   │   │   │   ├── fixtfti.c
│   │   │   │   │   ├── fixunsdfdi.c
│   │   │   │   │   ├── fixunsdfsi.c
│   │   │   │   │   ├── fixunsdfti.c
│   │   │   │   │   ├── fixunssfdi.c
│   │   │   │   │   ├── fixunssfsi.c
│   │   │   │   │   ├── fixunssfti.c
│   │   │   │   │   ├── fixunstfdi.c
│   │   │   │   │   ├── fixunstfsi.c
│   │   │   │   │   ├── fixunstfti.c
│   │   │   │   │   ├── fixunsxfdi.c
│   │   │   │   │   ├── fixunsxfsi.c
│   │   │   │   │   ├── fixunsxfti.c
│   │   │   │   │   ├── fixxfdi.c
│   │   │   │   │   ├── fixxfti.c
│   │   │   │   │   ├── floatdidf.c
│   │   │   │   │   ├── floatdisf.c
│   │   │   │   │   ├── floatditf.c
│   │   │   │   │   ├── floatdixf.c
│   │   │   │   │   ├── floatsidf.c
│   │   │   │   │   ├── floatsisf.c
│   │   │   │   │   ├── floatsitf.c
│   │   │   │   │   ├── floattidf.c
│   │   │   │   │   ├── floattisf.c
│   │   │   │   │   ├── floattixf.c
│   │   │   │   │   ├── floatundidf.c
│   │   │   │   │   ├── floatundisf.c
│   │   │   │   │   ├── floatunditf.c
│   │   │   │   │   ├── floatundixf.c
│   │   │   │   │   ├── floatunsidf.c
│   │   │   │   │   ├── floatunsisf.c
│   │   │   │   │   ├── floatunsitf.c
│   │   │   │   │   ├── floatuntidf.c
│   │   │   │   │   ├── floatuntisf.c
│   │   │   │   │   ├── floatuntixf.c
│   │   │   │   │   ├── fp_add_impl.inc
│   │   │   │   │   ├── fp_extend.h
│   │   │   │   │   ├── fp_extend_impl.inc
│   │   │   │   │   ├── fp_fixint_impl.inc
│   │   │   │   │   ├── fp_fixuint_impl.inc
│   │   │   │   │   ├── fp_lib.h
│   │   │   │   │   ├── fp_mul_impl.inc
│   │   │   │   │   ├── fp_trunc.h
│   │   │   │   │   ├── fp_trunc_impl.inc
│   │   │   │   │   ├── gcc_personality_v0.c
│   │   │   │   │   ├── i386/
│   │   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   │   ├── ashldi3.S
│   │   │   │   │   │   ├── ashrdi3.S
│   │   │   │   │   │   ├── chkstk.S
│   │   │   │   │   │   ├── chkstk2.S
│   │   │   │   │   │   ├── divdi3.S
│   │   │   │   │   │   ├── floatdidf.S
│   │   │   │   │   │   ├── floatdisf.S
│   │   │   │   │   │   ├── floatdixf.S
│   │   │   │   │   │   ├── floatundidf.S
│   │   │   │   │   │   ├── floatundisf.S
│   │   │   │   │   │   ├── floatundixf.S
│   │   │   │   │   │   ├── lshrdi3.S
│   │   │   │   │   │   ├── moddi3.S
│   │   │   │   │   │   ├── muldi3.S
│   │   │   │   │   │   ├── udivdi3.S
│   │   │   │   │   │   └── umoddi3.S
│   │   │   │   │   ├── int_endianness.h
│   │   │   │   │   ├── int_lib.h
│   │   │   │   │   ├── int_math.h
│   │   │   │   │   ├── int_types.h
│   │   │   │   │   ├── int_util.c
│   │   │   │   │   ├── int_util.h
│   │   │   │   │   ├── lshrdi3.c
│   │   │   │   │   ├── lshrti3.c
│   │   │   │   │   ├── macho_embedded/
│   │   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   │   ├── arm.txt
│   │   │   │   │   │   ├── common.txt
│   │   │   │   │   │   ├── i386.txt
│   │   │   │   │   │   ├── thumb2-64.txt
│   │   │   │   │   │   └── thumb2.txt
│   │   │   │   │   ├── moddi3.c
│   │   │   │   │   ├── modsi3.c
│   │   │   │   │   ├── modti3.c
│   │   │   │   │   ├── muldc3.c
│   │   │   │   │   ├── muldf3.c
│   │   │   │   │   ├── muldi3.c
│   │   │   │   │   ├── mulodi4.c
│   │   │   │   │   ├── mulosi4.c
│   │   │   │   │   ├── muloti4.c
│   │   │   │   │   ├── mulsc3.c
│   │   │   │   │   ├── mulsf3.c
│   │   │   │   │   ├── multc3.c
│   │   │   │   │   ├── multf3.c
│   │   │   │   │   ├── multi3.c
│   │   │   │   │   ├── mulvdi3.c
│   │   │   │   │   ├── mulvsi3.c
│   │   │   │   │   ├── mulvti3.c
│   │   │   │   │   ├── mulxc3.c
│   │   │   │   │   ├── negdf2.c
│   │   │   │   │   ├── negdi2.c
│   │   │   │   │   ├── negsf2.c
│   │   │   │   │   ├── negti2.c
│   │   │   │   │   ├── negvdi2.c
│   │   │   │   │   ├── negvsi2.c
│   │   │   │   │   ├── negvti2.c
│   │   │   │   │   ├── paritydi2.c
│   │   │   │   │   ├── paritysi2.c
│   │   │   │   │   ├── parityti2.c
│   │   │   │   │   ├── popcountdi2.c
│   │   │   │   │   ├── popcountsi2.c
│   │   │   │   │   ├── popcountti2.c
│   │   │   │   │   ├── powidf2.c
│   │   │   │   │   ├── powisf2.c
│   │   │   │   │   ├── powitf2.c
│   │   │   │   │   ├── powixf2.c
│   │   │   │   │   ├── ppc/
│   │   │   │   │   │   ├── DD.h
│   │   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   │   ├── divtc3.c
│   │   │   │   │   │   ├── fixtfdi.c
│   │   │   │   │   │   ├── fixunstfdi.c
│   │   │   │   │   │   ├── floatditf.c
│   │   │   │   │   │   ├── floatunditf.c
│   │   │   │   │   │   ├── gcc_qadd.c
│   │   │   │   │   │   ├── gcc_qdiv.c
│   │   │   │   │   │   ├── gcc_qmul.c
│   │   │   │   │   │   ├── gcc_qsub.c
│   │   │   │   │   │   ├── multc3.c
│   │   │   │   │   │   ├── restFP.S
│   │   │   │   │   │   └── saveFP.S
│   │   │   │   │   ├── subdf3.c
│   │   │   │   │   ├── subsf3.c
│   │   │   │   │   ├── subtf3.c
│   │   │   │   │   ├── subvdi3.c
│   │   │   │   │   ├── subvsi3.c
│   │   │   │   │   ├── subvti3.c
│   │   │   │   │   ├── trampoline_setup.c
│   │   │   │   │   ├── truncdfhf2.c
│   │   │   │   │   ├── truncdfsf2.c
│   │   │   │   │   ├── truncsfhf2.c
│   │   │   │   │   ├── trunctfdf2.c
│   │   │   │   │   ├── trunctfsf2.c
│   │   │   │   │   ├── ucmpdi2.c
│   │   │   │   │   ├── ucmpti2.c
│   │   │   │   │   ├── udivdi3.c
│   │   │   │   │   ├── udivmoddi4.c
│   │   │   │   │   ├── udivmodsi4.c
│   │   │   │   │   ├── udivmodti4.c
│   │   │   │   │   ├── udivsi3.c
│   │   │   │   │   ├── udivti3.c
│   │   │   │   │   ├── umoddi3.c
│   │   │   │   │   ├── umodsi3.c
│   │   │   │   │   ├── umodti3.c
│   │   │   │   │   └── x86_64/
│   │   │   │   │       ├── Makefile.mk
│   │   │   │   │       ├── chkstk.S
│   │   │   │   │       ├── chkstk2.S
│   │   │   │   │       ├── floatdidf.c
│   │   │   │   │       ├── floatdisf.c
│   │   │   │   │       ├── floatdixf.c
│   │   │   │   │       ├── floatundidf.S
│   │   │   │   │       ├── floatundisf.S
│   │   │   │   │       └── floatundixf.S
│   │   │   │   ├── cfi/
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── cfi.cc
│   │   │   │   │   └── cfi_blacklist.txt
│   │   │   │   ├── dfsan/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── dfsan.cc
│   │   │   │   │   ├── dfsan.h
│   │   │   │   │   ├── dfsan.syms.extra
│   │   │   │   │   ├── dfsan_custom.cc
│   │   │   │   │   ├── dfsan_flags.inc
│   │   │   │   │   ├── dfsan_interceptors.cc
│   │   │   │   │   ├── dfsan_platform.h
│   │   │   │   │   ├── done_abilist.txt
│   │   │   │   │   ├── libc_ubuntu1404_abilist.txt
│   │   │   │   │   └── scripts/
│   │   │   │   │       ├── build-libc-list.py
│   │   │   │   │       └── check_custom_wrappers.sh
│   │   │   │   ├── interception/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── Android.mk
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   ├── interception.h
│   │   │   │   │   ├── interception_linux.cc
│   │   │   │   │   ├── interception_linux.h
│   │   │   │   │   ├── interception_mac.cc
│   │   │   │   │   ├── interception_mac.h
│   │   │   │   │   ├── interception_type_test.cc
│   │   │   │   │   ├── interception_win.cc
│   │   │   │   │   └── interception_win.h
│   │   │   │   ├── lsan/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   ├── lsan.cc
│   │   │   │   │   ├── lsan.h
│   │   │   │   │   ├── lsan_allocator.cc
│   │   │   │   │   ├── lsan_allocator.h
│   │   │   │   │   ├── lsan_common.cc
│   │   │   │   │   ├── lsan_common.h
│   │   │   │   │   ├── lsan_common_linux.cc
│   │   │   │   │   ├── lsan_flags.inc
│   │   │   │   │   ├── lsan_interceptors.cc
│   │   │   │   │   ├── lsan_preinit.cc
│   │   │   │   │   ├── lsan_thread.cc
│   │   │   │   │   └── lsan_thread.h
│   │   │   │   ├── msan/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── msan.cc
│   │   │   │   │   ├── msan.h
│   │   │   │   │   ├── msan.syms.extra
│   │   │   │   │   ├── msan_allocator.cc
│   │   │   │   │   ├── msan_allocator.h
│   │   │   │   │   ├── msan_blacklist.txt
│   │   │   │   │   ├── msan_chained_origin_depot.cc
│   │   │   │   │   ├── msan_chained_origin_depot.h
│   │   │   │   │   ├── msan_flags.h
│   │   │   │   │   ├── msan_flags.inc
│   │   │   │   │   ├── msan_interceptors.cc
│   │   │   │   │   ├── msan_interface_internal.h
│   │   │   │   │   ├── msan_linux.cc
│   │   │   │   │   ├── msan_new_delete.cc
│   │   │   │   │   ├── msan_origin.h
│   │   │   │   │   ├── msan_poisoning.cc
│   │   │   │   │   ├── msan_poisoning.h
│   │   │   │   │   ├── msan_report.cc
│   │   │   │   │   ├── msan_thread.cc
│   │   │   │   │   ├── msan_thread.h
│   │   │   │   │   └── tests/
│   │   │   │   │       ├── CMakeLists.txt
│   │   │   │   │       ├── msan_loadable.cc
│   │   │   │   │       ├── msan_test.cc
│   │   │   │   │       ├── msan_test_config.h
│   │   │   │   │       └── msan_test_main.cc
│   │   │   │   ├── profile/
│   │   │   │   │   ├── Android.mk
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── GCDAProfiling.c
│   │   │   │   │   ├── InstrProfData.inc
│   │   │   │   │   ├── InstrProfiling.c
│   │   │   │   │   ├── InstrProfiling.h
│   │   │   │   │   ├── InstrProfilingBuffer.c
│   │   │   │   │   ├── InstrProfilingFile.c
│   │   │   │   │   ├── InstrProfilingInternal.h
│   │   │   │   │   ├── InstrProfilingPlatformDarwin.c
│   │   │   │   │   ├── InstrProfilingPlatformLinux.c
│   │   │   │   │   ├── InstrProfilingPlatformOther.c
│   │   │   │   │   ├── InstrProfilingPort.h
│   │   │   │   │   ├── InstrProfilingRuntime.cc
│   │   │   │   │   ├── InstrProfilingUtil.c
│   │   │   │   │   ├── InstrProfilingUtil.h
│   │   │   │   │   ├── InstrProfilingValue.c
│   │   │   │   │   ├── InstrProfilingWriter.c
│   │   │   │   │   └── Makefile.mk
│   │   │   │   ├── safestack/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   └── safestack.cc
│   │   │   │   ├── sanitizer_common/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── Android.mk
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   ├── sanitizer_addrhashmap.h
│   │   │   │   │   ├── sanitizer_allocator.cc
│   │   │   │   │   ├── sanitizer_allocator.h
│   │   │   │   │   ├── sanitizer_allocator_interface.h
│   │   │   │   │   ├── sanitizer_allocator_internal.h
│   │   │   │   │   ├── sanitizer_asm.h
│   │   │   │   │   ├── sanitizer_atomic.h
│   │   │   │   │   ├── sanitizer_atomic_clang.h
│   │   │   │   │   ├── sanitizer_atomic_clang_other.h
│   │   │   │   │   ├── sanitizer_atomic_clang_x86.h
│   │   │   │   │   ├── sanitizer_atomic_msvc.h
│   │   │   │   │   ├── sanitizer_bitvector.h
│   │   │   │   │   ├── sanitizer_bvgraph.h
│   │   │   │   │   ├── sanitizer_common.cc
│   │   │   │   │   ├── sanitizer_common.h
│   │   │   │   │   ├── sanitizer_common_interceptors.inc
│   │   │   │   │   ├── sanitizer_common_interceptors_format.inc
│   │   │   │   │   ├── sanitizer_common_interceptors_ioctl.inc
│   │   │   │   │   ├── sanitizer_common_libcdep.cc
│   │   │   │   │   ├── sanitizer_common_nolibc.cc
│   │   │   │   │   ├── sanitizer_common_syscalls.inc
│   │   │   │   │   ├── sanitizer_coverage_libcdep.cc
│   │   │   │   │   ├── sanitizer_coverage_mapping_libcdep.cc
│   │   │   │   │   ├── sanitizer_deadlock_detector.h
│   │   │   │   │   ├── sanitizer_deadlock_detector1.cc
│   │   │   │   │   ├── sanitizer_deadlock_detector2.cc
│   │   │   │   │   ├── sanitizer_deadlock_detector_interface.h
│   │   │   │   │   ├── sanitizer_flag_parser.cc
│   │   │   │   │   ├── sanitizer_flag_parser.h
│   │   │   │   │   ├── sanitizer_flags.cc
│   │   │   │   │   ├── sanitizer_flags.h
│   │   │   │   │   ├── sanitizer_flags.inc
│   │   │   │   │   ├── sanitizer_freebsd.h
│   │   │   │   │   ├── sanitizer_interface_internal.h
│   │   │   │   │   ├── sanitizer_internal_defs.h
│   │   │   │   │   ├── sanitizer_lfstack.h
│   │   │   │   │   ├── sanitizer_libc.cc
│   │   │   │   │   ├── sanitizer_libc.h
│   │   │   │   │   ├── sanitizer_libignore.cc
│   │   │   │   │   ├── sanitizer_libignore.h
│   │   │   │   │   ├── sanitizer_linux.cc
│   │   │   │   │   ├── sanitizer_linux.h
│   │   │   │   │   ├── sanitizer_linux_libcdep.cc
│   │   │   │   │   ├── sanitizer_list.h
│   │   │   │   │   ├── sanitizer_mac.cc
│   │   │   │   │   ├── sanitizer_mac.h
│   │   │   │   │   ├── sanitizer_malloc_mac.inc
│   │   │   │   │   ├── sanitizer_mutex.h
│   │   │   │   │   ├── sanitizer_persistent_allocator.cc
│   │   │   │   │   ├── sanitizer_persistent_allocator.h
│   │   │   │   │   ├── sanitizer_placement_new.h
│   │   │   │   │   ├── sanitizer_platform.h
│   │   │   │   │   ├── sanitizer_platform_interceptors.h
│   │   │   │   │   ├── sanitizer_platform_limits_linux.cc
│   │   │   │   │   ├── sanitizer_platform_limits_posix.cc
│   │   │   │   │   ├── sanitizer_platform_limits_posix.h
│   │   │   │   │   ├── sanitizer_posix.cc
│   │   │   │   │   ├── sanitizer_posix.h
│   │   │   │   │   ├── sanitizer_posix_libcdep.cc
│   │   │   │   │   ├── sanitizer_printf.cc
│   │   │   │   │   ├── sanitizer_procmaps.h
│   │   │   │   │   ├── sanitizer_procmaps_common.cc
│   │   │   │   │   ├── sanitizer_procmaps_freebsd.cc
│   │   │   │   │   ├── sanitizer_procmaps_linux.cc
│   │   │   │   │   ├── sanitizer_procmaps_mac.cc
│   │   │   │   │   ├── sanitizer_quarantine.h
│   │   │   │   │   ├── sanitizer_report_decorator.h
│   │   │   │   │   ├── sanitizer_stackdepot.cc
│   │   │   │   │   ├── sanitizer_stackdepot.h
│   │   │   │   │   ├── sanitizer_stackdepotbase.h
│   │   │   │   │   ├── sanitizer_stacktrace.cc
│   │   │   │   │   ├── sanitizer_stacktrace.h
│   │   │   │   │   ├── sanitizer_stacktrace_libcdep.cc
│   │   │   │   │   ├── sanitizer_stacktrace_printer.cc
│   │   │   │   │   ├── sanitizer_stacktrace_printer.h
│   │   │   │   │   ├── sanitizer_stoptheworld.h
│   │   │   │   │   ├── sanitizer_stoptheworld_linux_libcdep.cc
│   │   │   │   │   ├── sanitizer_suppressions.cc
│   │   │   │   │   ├── sanitizer_suppressions.h
│   │   │   │   │   ├── sanitizer_symbolizer.cc
│   │   │   │   │   ├── sanitizer_symbolizer.h
│   │   │   │   │   ├── sanitizer_symbolizer_internal.h
│   │   │   │   │   ├── sanitizer_symbolizer_libbacktrace.cc
│   │   │   │   │   ├── sanitizer_symbolizer_libbacktrace.h
│   │   │   │   │   ├── sanitizer_symbolizer_libcdep.cc
│   │   │   │   │   ├── sanitizer_symbolizer_mac.cc
│   │   │   │   │   ├── sanitizer_symbolizer_mac.h
│   │   │   │   │   ├── sanitizer_symbolizer_posix_libcdep.cc
│   │   │   │   │   ├── sanitizer_symbolizer_win.cc
│   │   │   │   │   ├── sanitizer_syscall_generic.inc
│   │   │   │   │   ├── sanitizer_syscall_linux_aarch64.inc
│   │   │   │   │   ├── sanitizer_syscall_linux_x86_64.inc
│   │   │   │   │   ├── sanitizer_thread_registry.cc
│   │   │   │   │   ├── sanitizer_thread_registry.h
│   │   │   │   │   ├── sanitizer_tls_get_addr.cc
│   │   │   │   │   ├── sanitizer_tls_get_addr.h
│   │   │   │   │   ├── sanitizer_unwind_linux_libcdep.cc
│   │   │   │   │   ├── sanitizer_win.cc
│   │   │   │   │   ├── scripts/
│   │   │   │   │   │   ├── check_lint.sh
│   │   │   │   │   │   ├── cpplint.py
│   │   │   │   │   │   ├── gen_dynamic_list.py
│   │   │   │   │   │   ├── litlint.py
│   │   │   │   │   │   ├── litlint_test.py
│   │   │   │   │   │   └── sancov.py
│   │   │   │   │   └── tests/
│   │   │   │   │       ├── Android.mk
│   │   │   │   │       ├── CMakeLists.txt
│   │   │   │   │       ├── sanitizer_allocator_test.cc
│   │   │   │   │       ├── sanitizer_allocator_testlib.cc
│   │   │   │   │       ├── sanitizer_atomic_test.cc
│   │   │   │   │       ├── sanitizer_bitvector_test.cc
│   │   │   │   │       ├── sanitizer_bvgraph_test.cc
│   │   │   │   │       ├── sanitizer_common_test.cc
│   │   │   │   │       ├── sanitizer_deadlock_detector_test.cc
│   │   │   │   │       ├── sanitizer_flags_test.cc
│   │   │   │   │       ├── sanitizer_format_interceptor_test.cc
│   │   │   │   │       ├── sanitizer_ioctl_test.cc
│   │   │   │   │       ├── sanitizer_libc_test.cc
│   │   │   │   │       ├── sanitizer_linux_test.cc
│   │   │   │   │       ├── sanitizer_list_test.cc
│   │   │   │   │       ├── sanitizer_mutex_test.cc
│   │   │   │   │       ├── sanitizer_nolibc_test.cc
│   │   │   │   │       ├── sanitizer_nolibc_test_main.cc
│   │   │   │   │       ├── sanitizer_posix_test.cc
│   │   │   │   │       ├── sanitizer_printf_test.cc
│   │   │   │   │       ├── sanitizer_procmaps_test.cc
│   │   │   │   │       ├── sanitizer_pthread_wrappers.h
│   │   │   │   │       ├── sanitizer_stackdepot_test.cc
│   │   │   │   │       ├── sanitizer_stacktrace_printer_test.cc
│   │   │   │   │       ├── sanitizer_stacktrace_test.cc
│   │   │   │   │       ├── sanitizer_stoptheworld_test.cc
│   │   │   │   │       ├── sanitizer_stoptheworld_testlib.cc
│   │   │   │   │       ├── sanitizer_suppressions_test.cc
│   │   │   │   │       ├── sanitizer_symbolizer_test.cc
│   │   │   │   │       ├── sanitizer_test_config.h
│   │   │   │   │       ├── sanitizer_test_main.cc
│   │   │   │   │       ├── sanitizer_test_utils.h
│   │   │   │   │       ├── sanitizer_thread_registry_test.cc
│   │   │   │   │       └── standalone_malloc_test.cc
│   │   │   │   ├── tsan/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── Android.mk
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── analyze_libtsan.sh
│   │   │   │   │   ├── benchmarks/
│   │   │   │   │   │   ├── mini_bench_local.cc
│   │   │   │   │   │   ├── mini_bench_shared.cc
│   │   │   │   │   │   ├── start_many_threads.cc
│   │   │   │   │   │   └── vts_many_threads_bench.cc
│   │   │   │   │   ├── check_analyze.sh
│   │   │   │   │   ├── check_cmake.sh
│   │   │   │   │   ├── dd/
│   │   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   │   ├── dd_interceptors.cc
│   │   │   │   │   │   ├── dd_rtl.cc
│   │   │   │   │   │   └── dd_rtl.h
│   │   │   │   │   ├── go/
│   │   │   │   │   │   ├── build.bat
│   │   │   │   │   │   ├── buildgo.sh
│   │   │   │   │   │   ├── test.c
│   │   │   │   │   │   └── tsan_go.cc
│   │   │   │   │   ├── rtl/
│   │   │   │   │   │   ├── tsan.syms.extra
│   │   │   │   │   │   ├── tsan_clock.cc
│   │   │   │   │   │   ├── tsan_clock.h
│   │   │   │   │   │   ├── tsan_defs.h
│   │   │   │   │   │   ├── tsan_dense_alloc.h
│   │   │   │   │   │   ├── tsan_fd.cc
│   │   │   │   │   │   ├── tsan_fd.h
│   │   │   │   │   │   ├── tsan_flags.cc
│   │   │   │   │   │   ├── tsan_flags.h
│   │   │   │   │   │   ├── tsan_flags.inc
│   │   │   │   │   │   ├── tsan_ignoreset.cc
│   │   │   │   │   │   ├── tsan_ignoreset.h
│   │   │   │   │   │   ├── tsan_interceptors.cc
│   │   │   │   │   │   ├── tsan_interceptors.h
│   │   │   │   │   │   ├── tsan_interceptors_mac.cc
│   │   │   │   │   │   ├── tsan_interface.cc
│   │   │   │   │   │   ├── tsan_interface.h
│   │   │   │   │   │   ├── tsan_interface_ann.cc
│   │   │   │   │   │   ├── tsan_interface_ann.h
│   │   │   │   │   │   ├── tsan_interface_atomic.cc
│   │   │   │   │   │   ├── tsan_interface_inl.h
│   │   │   │   │   │   ├── tsan_interface_java.cc
│   │   │   │   │   │   ├── tsan_interface_java.h
│   │   │   │   │   │   ├── tsan_libdispatch_mac.cc
│   │   │   │   │   │   ├── tsan_malloc_mac.cc
│   │   │   │   │   │   ├── tsan_md5.cc
│   │   │   │   │   │   ├── tsan_mman.cc
│   │   │   │   │   │   ├── tsan_mman.h
│   │   │   │   │   │   ├── tsan_mutex.cc
│   │   │   │   │   │   ├── tsan_mutex.h
│   │   │   │   │   │   ├── tsan_mutexset.cc
│   │   │   │   │   │   ├── tsan_mutexset.h
│   │   │   │   │   │   ├── tsan_new_delete.cc
│   │   │   │   │   │   ├── tsan_platform.h
│   │   │   │   │   │   ├── tsan_platform_linux.cc
│   │   │   │   │   │   ├── tsan_platform_mac.cc
│   │   │   │   │   │   ├── tsan_platform_posix.cc
│   │   │   │   │   │   ├── tsan_platform_windows.cc
│   │   │   │   │   │   ├── tsan_ppc_regs.h
│   │   │   │   │   │   ├── tsan_report.cc
│   │   │   │   │   │   ├── tsan_report.h
│   │   │   │   │   │   ├── tsan_rtl.cc
│   │   │   │   │   │   ├── tsan_rtl.h
│   │   │   │   │   │   ├── tsan_rtl_aarch64.S
│   │   │   │   │   │   ├── tsan_rtl_amd64.S
│   │   │   │   │   │   ├── tsan_rtl_mutex.cc
│   │   │   │   │   │   ├── tsan_rtl_ppc64.S
│   │   │   │   │   │   ├── tsan_rtl_report.cc
│   │   │   │   │   │   ├── tsan_rtl_thread.cc
│   │   │   │   │   │   ├── tsan_stack_trace.cc
│   │   │   │   │   │   ├── tsan_stack_trace.h
│   │   │   │   │   │   ├── tsan_stat.cc
│   │   │   │   │   │   ├── tsan_stat.h
│   │   │   │   │   │   ├── tsan_suppressions.cc
│   │   │   │   │   │   ├── tsan_suppressions.h
│   │   │   │   │   │   ├── tsan_symbolize.cc
│   │   │   │   │   │   ├── tsan_symbolize.h
│   │   │   │   │   │   ├── tsan_sync.cc
│   │   │   │   │   │   ├── tsan_sync.h
│   │   │   │   │   │   ├── tsan_trace.h
│   │   │   │   │   │   ├── tsan_update_shadow_word_inl.h
│   │   │   │   │   │   └── tsan_vector.h
│   │   │   │   │   └── tests/
│   │   │   │   │       ├── CMakeLists.txt
│   │   │   │   │       ├── rtl/
│   │   │   │   │       │   ├── CMakeLists.txt
│   │   │   │   │       │   ├── tsan_bench.cc
│   │   │   │   │       │   ├── tsan_mop.cc
│   │   │   │   │       │   ├── tsan_mutex.cc
│   │   │   │   │       │   ├── tsan_posix.cc
│   │   │   │   │       │   ├── tsan_string.cc
│   │   │   │   │       │   ├── tsan_test.cc
│   │   │   │   │       │   ├── tsan_test_util.h
│   │   │   │   │       │   ├── tsan_test_util_linux.cc
│   │   │   │   │       │   └── tsan_thread.cc
│   │   │   │   │       └── unit/
│   │   │   │   │           ├── CMakeLists.txt
│   │   │   │   │           ├── tsan_clock_test.cc
│   │   │   │   │           ├── tsan_dense_alloc_test.cc
│   │   │   │   │           ├── tsan_flags_test.cc
│   │   │   │   │           ├── tsan_mman_test.cc
│   │   │   │   │           ├── tsan_mutex_test.cc
│   │   │   │   │           ├── tsan_mutexset_test.cc
│   │   │   │   │           ├── tsan_shadow_test.cc
│   │   │   │   │           ├── tsan_stack_test.cc
│   │   │   │   │           ├── tsan_sync_test.cc
│   │   │   │   │           ├── tsan_unit_test_main.cc
│   │   │   │   │           └── tsan_vector_test.cc
│   │   │   │   └── ubsan/
│   │   │   │       ├── Android.mk
│   │   │   │       ├── CMakeLists.txt
│   │   │   │       ├── Makefile.mk
│   │   │   │       ├── ubsan.syms.extra
│   │   │   │       ├── ubsan_checks.inc
│   │   │   │       ├── ubsan_diag.cc
│   │   │   │       ├── ubsan_diag.h
│   │   │   │       ├── ubsan_flags.cc
│   │   │   │       ├── ubsan_flags.h
│   │   │   │       ├── ubsan_flags.inc
│   │   │   │       ├── ubsan_handlers.cc
│   │   │   │       ├── ubsan_handlers.h
│   │   │   │       ├── ubsan_handlers_cxx.cc
│   │   │   │       ├── ubsan_handlers_cxx.h
│   │   │   │       ├── ubsan_init.cc
│   │   │   │       ├── ubsan_init.h
│   │   │   │       ├── ubsan_init_standalone.cc
│   │   │   │       ├── ubsan_platform.h
│   │   │   │       ├── ubsan_type_hash.cc
│   │   │   │       ├── ubsan_type_hash.h
│   │   │   │       ├── ubsan_type_hash_itanium.cc
│   │   │   │       ├── ubsan_type_hash_win.cc
│   │   │   │       ├── ubsan_value.cc
│   │   │   │       └── ubsan_value.h
│   │   │   └── make/
│   │   │       ├── AppleBI.mk
│   │   │       ├── config.mk
│   │   │       ├── filter-inputs
│   │   │       ├── lib_info.mk
│   │   │       ├── lib_platforms.mk
│   │   │       ├── lib_util.mk
│   │   │       ├── options.mk
│   │   │       ├── platform/
│   │   │       │   ├── clang_darwin.mk
│   │   │       │   ├── clang_darwin_test_input.c
│   │   │       │   ├── clang_linux.mk
│   │   │       │   ├── clang_linux_test_input.c
│   │   │       │   ├── clang_macho_embedded.mk
│   │   │       │   ├── clang_macho_embedded_test_input.c
│   │   │       │   ├── clang_mingw.mk
│   │   │       │   ├── darwin_bni.mk
│   │   │       │   └── multi_arch.mk
│   │   │       ├── subdir.mk
│   │   │       ├── test/
│   │   │       │   └── test-util.mk
│   │   │       └── util.mk
│   │   ├── expat/
│   │   │   ├── Android.mk
│   │   │   ├── Changes
│   │   │   ├── CleanSpec.mk
│   │   │   ├── MODULE_LICENSE_BSD_LIKE
│   │   │   ├── NOTICE
│   │   │   ├── README
│   │   │   ├── README.android
│   │   │   ├── README.version
│   │   │   ├── expat_config.h
│   │   │   ├── import_expat.sh
│   │   │   └── lib/
│   │   │       ├── ascii.h
│   │   │       ├── asciitab.h
│   │   │       ├── expat.h
│   │   │       ├── expat_external.h
│   │   │       ├── iasciitab.h
│   │   │       ├── internal.h
│   │   │       ├── latin1tab.h
│   │   │       ├── nametab.h
│   │   │       ├── utf8tab.h
│   │   │       ├── xmlparse.c
│   │   │       ├── xmlrole.c
│   │   │       ├── xmlrole.h
│   │   │       ├── xmltok.c
│   │   │       ├── xmltok.h
│   │   │       ├── xmltok_impl.c
│   │   │       ├── xmltok_impl.h
│   │   │       └── xmltok_ns.c
│   │   ├── libcxx/
│   │   │   ├── .arcconfig
│   │   │   ├── .gitignore
│   │   │   ├── Android.bp
│   │   │   ├── Android.mk
│   │   │   ├── CMakeLists.txt
│   │   │   ├── CREDITS.TXT
│   │   │   ├── LICENSE.TXT
│   │   │   ├── MODULE_LICENSE_BSD_LIKE
│   │   │   ├── Makefile
│   │   │   ├── NOTICE
│   │   │   ├── TODO.TXT
│   │   │   ├── buildcmds/
│   │   │   │   ├── .gitignore
│   │   │   │   ├── Android.mk
│   │   │   │   ├── buildcmdscc
│   │   │   │   └── dummy.cpp
│   │   │   ├── cmake/
│   │   │   │   ├── Modules/
│   │   │   │   │   ├── CodeCoverage.cmake
│   │   │   │   │   ├── HandleLibCXXABI.cmake
│   │   │   │   │   ├── HandleLibcxxFlags.cmake
│   │   │   │   │   ├── HandleOutOfTreeLLVM.cmake
│   │   │   │   │   └── MacroEnsureOutOfSourceBuild.cmake
│   │   │   │   └── config-ix.cmake
│   │   │   ├── include/
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   ├── __bit_reference
│   │   │   │   ├── __config
│   │   │   │   ├── __debug
│   │   │   │   ├── __functional_03
│   │   │   │   ├── __functional_base
│   │   │   │   ├── __functional_base_03
│   │   │   │   ├── __hash_table
│   │   │   │   ├── __locale
│   │   │   │   ├── __mutex_base
│   │   │   │   ├── __refstring
│   │   │   │   ├── __split_buffer
│   │   │   │   ├── __sso_allocator
│   │   │   │   ├── __std_stream
│   │   │   │   ├── __tree
│   │   │   │   ├── __tuple
│   │   │   │   ├── __undef___deallocate
│   │   │   │   ├── __undef_min_max
│   │   │   │   ├── algorithm
│   │   │   │   ├── array
│   │   │   │   ├── atomic
│   │   │   │   ├── bitset
│   │   │   │   ├── cassert
│   │   │   │   ├── ccomplex
│   │   │   │   ├── cctype
│   │   │   │   ├── cerrno
│   │   │   │   ├── cfenv
│   │   │   │   ├── cfloat
│   │   │   │   ├── chrono
│   │   │   │   ├── cinttypes
│   │   │   │   ├── ciso646
│   │   │   │   ├── climits
│   │   │   │   ├── clocale
│   │   │   │   ├── cmath
│   │   │   │   ├── codecvt
│   │   │   │   ├── complex
│   │   │   │   ├── complex.h
│   │   │   │   ├── condition_variable
│   │   │   │   ├── csetjmp
│   │   │   │   ├── csignal
│   │   │   │   ├── cstdarg
│   │   │   │   ├── cstdbool
│   │   │   │   ├── cstddef
│   │   │   │   ├── cstdint
│   │   │   │   ├── cstdio
│   │   │   │   ├── cstdlib
│   │   │   │   ├── cstring
│   │   │   │   ├── ctgmath
│   │   │   │   ├── ctime
│   │   │   │   ├── cwchar
│   │   │   │   ├── cwctype
│   │   │   │   ├── deque
│   │   │   │   ├── exception
│   │   │   │   ├── experimental/
│   │   │   │   │   ├── __config
│   │   │   │   │   ├── algorithm
│   │   │   │   │   ├── any
│   │   │   │   │   ├── chrono
│   │   │   │   │   ├── dynarray
│   │   │   │   │   ├── functional
│   │   │   │   │   ├── optional
│   │   │   │   │   ├── ratio
│   │   │   │   │   ├── string_view
│   │   │   │   │   ├── system_error
│   │   │   │   │   ├── tuple
│   │   │   │   │   ├── type_traits
│   │   │   │   │   └── utility
│   │   │   │   ├── ext/
│   │   │   │   │   ├── __hash
│   │   │   │   │   ├── hash_map
│   │   │   │   │   └── hash_set
│   │   │   │   ├── forward_list
│   │   │   │   ├── fstream
│   │   │   │   ├── functional
│   │   │   │   ├── future
│   │   │   │   ├── initializer_list
│   │   │   │   ├── iomanip
│   │   │   │   ├── ios
│   │   │   │   ├── iosfwd
│   │   │   │   ├── iostream
│   │   │   │   ├── istream
│   │   │   │   ├── iterator
│   │   │   │   ├── limits
│   │   │   │   ├── list
│   │   │   │   ├── locale
│   │   │   │   ├── map
│   │   │   │   ├── memory
│   │   │   │   ├── module.modulemap
│   │   │   │   ├── mutex
│   │   │   │   ├── new
│   │   │   │   ├── numeric
│   │   │   │   ├── ostream
│   │   │   │   ├── queue
│   │   │   │   ├── random
│   │   │   │   ├── ratio
│   │   │   │   ├── regex
│   │   │   │   ├── scoped_allocator
│   │   │   │   ├── set
│   │   │   │   ├── shared_mutex
│   │   │   │   ├── sstream
│   │   │   │   ├── stack
│   │   │   │   ├── stdexcept
│   │   │   │   ├── streambuf
│   │   │   │   ├── string
│   │   │   │   ├── strstream
│   │   │   │   ├── support/
│   │   │   │   │   ├── android/
│   │   │   │   │   │   └── locale_bionic.h
│   │   │   │   │   ├── ibm/
│   │   │   │   │   │   ├── limits.h
│   │   │   │   │   │   ├── support.h
│   │   │   │   │   │   └── xlocale.h
│   │   │   │   │   ├── newlib/
│   │   │   │   │   │   └── xlocale.h
│   │   │   │   │   ├── solaris/
│   │   │   │   │   │   ├── floatingpoint.h
│   │   │   │   │   │   ├── wchar.h
│   │   │   │   │   │   └── xlocale.h
│   │   │   │   │   ├── win32/
│   │   │   │   │   │   ├── limits_win32.h
│   │   │   │   │   │   ├── locale_win32.h
│   │   │   │   │   │   ├── math_win32.h
│   │   │   │   │   │   └── support.h
│   │   │   │   │   └── xlocale/
│   │   │   │   │       └── xlocale.h
│   │   │   │   ├── system_error
│   │   │   │   ├── tgmath.h
│   │   │   │   ├── thread
│   │   │   │   ├── tuple
│   │   │   │   ├── type_traits
│   │   │   │   ├── typeindex
│   │   │   │   ├── typeinfo
│   │   │   │   ├── unordered_map
│   │   │   │   ├── unordered_set
│   │   │   │   ├── utility
│   │   │   │   ├── valarray
│   │   │   │   └── vector
│   │   │   ├── lib/
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   ├── buildit
│   │   │   │   ├── libc++abi.exp
│   │   │   │   ├── libc++abi2.exp
│   │   │   │   ├── libc++sjlj-abi.exp
│   │   │   │   ├── libc++unexp.exp
│   │   │   │   ├── notweak.exp
│   │   │   │   └── weak.exp
│   │   │   ├── lit.site.cfg
│   │   │   ├── ndk-test.sh
│   │   │   ├── run-tests.py
│   │   │   ├── src/
│   │   │   │   ├── algorithm.cpp
│   │   │   │   ├── any.cpp
│   │   │   │   ├── bind.cpp
│   │   │   │   ├── chrono.cpp
│   │   │   │   ├── condition_variable.cpp
│   │   │   │   ├── config_elast.h
│   │   │   │   ├── debug.cpp
│   │   │   │   ├── exception.cpp
│   │   │   │   ├── future.cpp
│   │   │   │   ├── hash.cpp
│   │   │   │   ├── ios.cpp
│   │   │   │   ├── iostream.cpp
│   │   │   │   ├── locale.cpp
│   │   │   │   ├── memory.cpp
│   │   │   │   ├── mutex.cpp
│   │   │   │   ├── new.cpp
│   │   │   │   ├── optional.cpp
│   │   │   │   ├── random.cpp
│   │   │   │   ├── regex.cpp
│   │   │   │   ├── shared_mutex.cpp
│   │   │   │   ├── stdexcept.cpp
│   │   │   │   ├── string.cpp
│   │   │   │   ├── strstream.cpp
│   │   │   │   ├── support/
│   │   │   │   │   ├── atomic_support.h
│   │   │   │   │   ├── solaris/
│   │   │   │   │   │   ├── README
│   │   │   │   │   │   ├── mbsnrtowcs.inc
│   │   │   │   │   │   ├── wcsnrtombs.inc
│   │   │   │   │   │   └── xlocale.c
│   │   │   │   │   └── win32/
│   │   │   │   │       ├── locale_win32.cpp
│   │   │   │   │       └── support.cpp
│   │   │   │   ├── system_error.cpp
│   │   │   │   ├── thread.cpp
│   │   │   │   ├── typeinfo.cpp
│   │   │   │   ├── utility.cpp
│   │   │   │   └── valarray.cpp
│   │   │   ├── test.mk
│   │   │   └── utils/
│   │   │       ├── not/
│   │   │       │   └── not.py
│   │   │       └── sym_check/
│   │   │           ├── linux_blacklist.txt
│   │   │           ├── osx_blacklist.txt
│   │   │           ├── sym_check/
│   │   │           │   ├── __init__.py
│   │   │           │   ├── diff.py
│   │   │           │   ├── extract.py
│   │   │           │   ├── match.py
│   │   │           │   └── util.py
│   │   │           ├── sym_diff.py
│   │   │           ├── sym_extract.py
│   │   │           └── sym_match.py
│   │   ├── libcxxabi/
│   │   │   ├── .arcconfig
│   │   │   ├── .gitignore
│   │   │   ├── Android.bp
│   │   │   ├── Android.mk
│   │   │   ├── CMakeLists.txt
│   │   │   ├── CREDITS.TXT
│   │   │   ├── LICENSE.TXT
│   │   │   ├── MODULE_LICENSE_BSD_LIKE
│   │   │   ├── NOTICE
│   │   │   ├── cmake/
│   │   │   │   └── config-ix.cmake
│   │   │   ├── include/
│   │   │   │   ├── __cxxabi_config.h
│   │   │   │   └── cxxabi.h
│   │   │   ├── lib/
│   │   │   │   └── buildit
│   │   │   └── src/
│   │   │       ├── CMakeLists.txt
│   │   │       ├── abort_message.cpp
│   │   │       ├── abort_message.h
│   │   │       ├── config.h
│   │   │       ├── cxa_aux_runtime.cpp
│   │   │       ├── cxa_default_handlers.cpp
│   │   │       ├── cxa_demangle.cpp
│   │   │       ├── cxa_exception.cpp
│   │   │       ├── cxa_exception.hpp
│   │   │       ├── cxa_exception_storage.cpp
│   │   │       ├── cxa_guard.cpp
│   │   │       ├── cxa_handlers.cpp
│   │   │       ├── cxa_handlers.hpp
│   │   │       ├── cxa_new_delete.cpp
│   │   │       ├── cxa_personality.cpp
│   │   │       ├── cxa_thread_atexit.cpp
│   │   │       ├── cxa_unexpected.cpp
│   │   │       ├── cxa_vector.cpp
│   │   │       ├── cxa_virtual.cpp
│   │   │       ├── exception.cpp
│   │   │       ├── fallback_malloc.ipp
│   │   │       ├── private_typeinfo.cpp
│   │   │       ├── private_typeinfo.h
│   │   │       ├── stdexcept.cpp
│   │   │       └── typeinfo.cpp
│   │   ├── libpng/
│   │   │   ├── ANNOUNCE
│   │   │   ├── Android.mk
│   │   │   ├── CHANGES
│   │   │   ├── CMakeLists.txt
│   │   │   ├── CleanSpec.mk
│   │   │   ├── INSTALL
│   │   │   ├── LICENSE
│   │   │   ├── MODULE_LICENSE_BSD_LIKE
│   │   │   ├── Makefile.am
│   │   │   ├── README
│   │   │   ├── README.android
│   │   │   ├── README.version
│   │   │   ├── TODO
│   │   │   ├── arm/
│   │   │   │   ├── arm_init.c
│   │   │   │   ├── filter_neon.S
│   │   │   │   └── filter_neon_intrinsics.c
│   │   │   ├── autogen.sh
│   │   │   ├── configure.ac
│   │   │   ├── contrib/
│   │   │   │   ├── README.txt
│   │   │   │   ├── arm-neon/
│   │   │   │   │   ├── README
│   │   │   │   │   ├── android-ndk.c
│   │   │   │   │   ├── linux-auxv.c
│   │   │   │   │   └── linux.c
│   │   │   │   ├── conftest/
│   │   │   │   │   ├── README
│   │   │   │   │   ├── read.dfa
│   │   │   │   │   ├── s_read.dfa
│   │   │   │   │   ├── s_write.dfa
│   │   │   │   │   ├── simple.dfa
│   │   │   │   │   └── write.dfa
│   │   │   │   ├── examples/
│   │   │   │   │   ├── README.txt
│   │   │   │   │   ├── iccfrompng.c
│   │   │   │   │   ├── pngpixel.c
│   │   │   │   │   └── pngtopng.c
│   │   │   │   ├── gregbook/
│   │   │   │   │   ├── COPYING
│   │   │   │   │   ├── LICENSE
│   │   │   │   │   ├── Makefile.mingw32
│   │   │   │   │   ├── Makefile.sgi
│   │   │   │   │   ├── Makefile.unx
│   │   │   │   │   ├── Makefile.w32
│   │   │   │   │   ├── README
│   │   │   │   │   ├── makevms.com
│   │   │   │   │   ├── readpng.c
│   │   │   │   │   ├── readpng.h
│   │   │   │   │   ├── readpng2.c
│   │   │   │   │   ├── readpng2.h
│   │   │   │   │   ├── readppm.c
│   │   │   │   │   ├── rpng-win.c
│   │   │   │   │   ├── rpng-x.c
│   │   │   │   │   ├── rpng2-win.c
│   │   │   │   │   ├── rpng2-x.c
│   │   │   │   │   ├── wpng.c
│   │   │   │   │   ├── writepng.c
│   │   │   │   │   └── writepng.h
│   │   │   │   ├── intel/
│   │   │   │   │   ├── INSTALL
│   │   │   │   │   ├── Makefile.am.patch
│   │   │   │   │   ├── configure.ac.patch
│   │   │   │   │   ├── filter_sse2_intrinsics.c
│   │   │   │   │   └── intel_init.c
│   │   │   │   ├── libtests/
│   │   │   │   │   ├── fakepng.c
│   │   │   │   │   ├── gentests.sh
│   │   │   │   │   ├── makepng.c
│   │   │   │   │   ├── pngimage.c
│   │   │   │   │   ├── pngstest-errors.h
│   │   │   │   │   ├── pngstest.c
│   │   │   │   │   ├── pngunknown.c
│   │   │   │   │   ├── pngvalid.c
│   │   │   │   │   ├── readpng.c
│   │   │   │   │   ├── tarith.c
│   │   │   │   │   └── timepng.c
│   │   │   │   ├── pngminim/
│   │   │   │   │   ├── README
│   │   │   │   │   ├── decoder/
│   │   │   │   │   │   ├── README
│   │   │   │   │   │   ├── makefile
│   │   │   │   │   │   ├── pngusr.dfa
│   │   │   │   │   │   └── pngusr.h
│   │   │   │   │   ├── encoder/
│   │   │   │   │   │   ├── README
│   │   │   │   │   │   ├── makefile
│   │   │   │   │   │   ├── pngusr.dfa
│   │   │   │   │   │   └── pngusr.h
│   │   │   │   │   └── preader/
│   │   │   │   │       ├── README
│   │   │   │   │       ├── makefile
│   │   │   │   │       ├── pngusr.dfa
│   │   │   │   │       └── pngusr.h
│   │   │   │   ├── pngminus/
│   │   │   │   │   ├── README
│   │   │   │   │   ├── makefile.std
│   │   │   │   │   ├── makefile.tc3
│   │   │   │   │   ├── makevms.com
│   │   │   │   │   ├── png2pnm.bat
│   │   │   │   │   ├── png2pnm.c
│   │   │   │   │   ├── png2pnm.sh
│   │   │   │   │   ├── pngminus.bat
│   │   │   │   │   ├── pngminus.sh
│   │   │   │   │   ├── pnm2png.bat
│   │   │   │   │   ├── pnm2png.c
│   │   │   │   │   └── pnm2png.sh
│   │   │   │   ├── pngsuite/
│   │   │   │   │   └── README
│   │   │   │   ├── tools/
│   │   │   │   │   ├── README.txt
│   │   │   │   │   ├── checksum-icc.c
│   │   │   │   │   ├── chkfmt
│   │   │   │   │   ├── cvtcolor.c
│   │   │   │   │   ├── genpng.c
│   │   │   │   │   ├── intgamma.sh
│   │   │   │   │   ├── makesRGB.c
│   │   │   │   │   ├── png-fix-itxt.c
│   │   │   │   │   ├── pngfix.c
│   │   │   │   │   └── sRGB.h
│   │   │   │   └── visupng/
│   │   │   │       ├── PngFile.c
│   │   │   │       ├── PngFile.h
│   │   │   │       ├── README.txt
│   │   │   │       ├── VisualPng.c
│   │   │   │       ├── VisualPng.dsp
│   │   │   │       ├── VisualPng.dsw
│   │   │   │       ├── VisualPng.rc
│   │   │   │       ├── cexcept.h
│   │   │   │       └── resource.h
│   │   │   ├── example.c
│   │   │   ├── libpng-config.in
│   │   │   ├── libpng-manual.txt
│   │   │   ├── libpng.3
│   │   │   ├── libpng.pc.in
│   │   │   ├── libpngpf.3
│   │   │   ├── png.5
│   │   │   ├── png.c
│   │   │   ├── png.h
│   │   │   ├── pngconf.h
│   │   │   ├── pngdebug.h
│   │   │   ├── pngerror.c
│   │   │   ├── pngget.c
│   │   │   ├── pnginfo.h
│   │   │   ├── pnglibconf.h
│   │   │   ├── pngmem.c
│   │   │   ├── pngpread.c
│   │   │   ├── pngpriv.h
│   │   │   ├── pngread.c
│   │   │   ├── pngrio.c
│   │   │   ├── pngrtran.c
│   │   │   ├── pngrutil.c
│   │   │   ├── pngset.c
│   │   │   ├── pngstruct.h
│   │   │   ├── pngtest.c
│   │   │   ├── pngtrans.c
│   │   │   ├── pngusr.dfa
│   │   │   ├── pngusr.h
│   │   │   ├── pngwio.c
│   │   │   ├── pngwrite.c
│   │   │   ├── pngwtran.c
│   │   │   ├── pngwutil.c
│   │   │   ├── projects/
│   │   │   │   ├── owatcom/
│   │   │   │   │   ├── libpng.tgt
│   │   │   │   │   ├── libpng.wpj
│   │   │   │   │   ├── pngconfig.mak
│   │   │   │   │   ├── pngstest.tgt
│   │   │   │   │   ├── pngtest.tgt
│   │   │   │   │   └── pngvalid.tgt
│   │   │   │   ├── visualc71/
│   │   │   │   │   ├── PRJ0041.mak
│   │   │   │   │   ├── README.txt
│   │   │   │   │   ├── README_zlib.txt
│   │   │   │   │   ├── libpng.sln
│   │   │   │   │   ├── libpng.vcproj
│   │   │   │   │   ├── pngtest.vcproj
│   │   │   │   │   └── zlib.vcproj
│   │   │   │   └── vstudio/
│   │   │   │       ├── README.txt
│   │   │   │       ├── libpng/
│   │   │   │       │   └── libpng.vcxproj
│   │   │   │       ├── pnglibconf/
│   │   │   │       │   └── pnglibconf.vcxproj
│   │   │   │       ├── pngstest/
│   │   │   │       │   └── pngstest.vcxproj
│   │   │   │       ├── pngtest/
│   │   │   │       │   └── pngtest.vcxproj
│   │   │   │       ├── pngunknown/
│   │   │   │       │   └── pngunknown.vcxproj
│   │   │   │       ├── pngvalid/
│   │   │   │       │   └── pngvalid.vcxproj
│   │   │   │       ├── vstudio.sln
│   │   │   │       ├── zlib/
│   │   │   │       │   └── zlib.vcxproj
│   │   │   │       └── zlib.props
│   │   │   └── scripts/
│   │   │       ├── README.txt
│   │   │       ├── SCOPTIONS.ppc
│   │   │       ├── checksym.awk
│   │   │       ├── def.c
│   │   │       ├── descrip.mms
│   │   │       ├── dfn.awk
│   │   │       ├── genchk.cmake.in
│   │   │       ├── genout.cmake.in
│   │   │       ├── gensrc.cmake.in
│   │   │       ├── intprefix.c
│   │   │       ├── libpng-config-body.in
│   │   │       ├── libpng-config-head.in
│   │   │       ├── libpng.pc.in
│   │   │       ├── macro.lst
│   │   │       ├── makefile.32sunu
│   │   │       ├── makefile.64sunu
│   │   │       ├── makefile.acorn
│   │   │       ├── makefile.aix
│   │   │       ├── makefile.amiga
│   │   │       ├── makefile.atari
│   │   │       ├── makefile.bc32
│   │   │       ├── makefile.beos
│   │   │       ├── makefile.bor
│   │   │       ├── makefile.cegcc
│   │   │       ├── makefile.darwin
│   │   │       ├── makefile.dec
│   │   │       ├── makefile.dj2
│   │   │       ├── makefile.freebsd
│   │   │       ├── makefile.gcc
│   │   │       ├── makefile.hp64
│   │   │       ├── makefile.hpgcc
│   │   │       ├── makefile.hpux
│   │   │       ├── makefile.ibmc
│   │   │       ├── makefile.intel
│   │   │       ├── makefile.knr
│   │   │       ├── makefile.linux
│   │   │       ├── makefile.mips
│   │   │       ├── makefile.msc
│   │   │       ├── makefile.msys
│   │   │       ├── makefile.ne12bsd
│   │   │       ├── makefile.netbsd
│   │   │       ├── makefile.openbsd
│   │   │       ├── makefile.sco
│   │   │       ├── makefile.sggcc
│   │   │       ├── makefile.sgi
│   │   │       ├── makefile.so9
│   │   │       ├── makefile.solaris
│   │   │       ├── makefile.solaris-x86
│   │   │       ├── makefile.std
│   │   │       ├── makefile.sunos
│   │   │       ├── makefile.tc3
│   │   │       ├── makefile.vcwin32
│   │   │       ├── makevms.com
│   │   │       ├── options.awk
│   │   │       ├── pnglibconf.dfa
│   │   │       ├── pnglibconf.h.prebuilt
│   │   │       ├── pnglibconf.mak
│   │   │       ├── pngwin.rc
│   │   │       ├── prefix.c
│   │   │       ├── smakefile.ppc
│   │   │       ├── sym.c
│   │   │       ├── symbols.c
│   │   │       ├── symbols.def
│   │   │       ├── test.cmake.in
│   │   │       └── vers.c
│   │   ├── safe-iop/
│   │   │   ├── Android.mk
│   │   │   ├── CleanSpec.mk
│   │   │   ├── MODULE_LICENSE_BSD_LIKE
│   │   │   ├── NOTICE
│   │   │   ├── README.version
│   │   │   ├── include/
│   │   │   │   └── safe_iop.h
│   │   │   ├── src/
│   │   │   │   └── safe_iop.c
│   │   │   └── testsuite/
│   │   │       └── Android.mk
│   │   └── zlib/
│   │       ├── Android.mk
│   │       ├── CleanSpec.mk
│   │       ├── MODULE_LICENSE_BSD_LIKE
│   │       ├── NOTICE
│   │       ├── src/
│   │       │   ├── CMakeLists.txt
│   │       │   ├── ChangeLog
│   │       │   ├── FAQ
│   │       │   ├── INDEX
│   │       │   ├── Makefile.in
│   │       │   ├── README
│   │       │   ├── adler32.c
│   │       │   ├── amiga/
│   │       │   │   ├── Makefile.pup
│   │       │   │   └── Makefile.sas
│   │       │   ├── as400/
│   │       │   │   ├── bndsrc
│   │       │   │   ├── compile.clp
│   │       │   │   ├── readme.txt
│   │       │   │   └── zlib.inc
│   │       │   ├── compress.c
│   │       │   ├── configure
│   │       │   ├── contrib/
│   │       │   │   ├── README.contrib
│   │       │   │   ├── ada/
│   │       │   │   │   ├── buffer_demo.adb
│   │       │   │   │   ├── mtest.adb
│   │       │   │   │   ├── read.adb
│   │       │   │   │   ├── readme.txt
│   │       │   │   │   ├── test.adb
│   │       │   │   │   ├── zlib-streams.adb
│   │       │   │   │   ├── zlib-streams.ads
│   │       │   │   │   ├── zlib-thin.adb
│   │       │   │   │   ├── zlib-thin.ads
│   │       │   │   │   ├── zlib.adb
│   │       │   │   │   ├── zlib.ads
│   │       │   │   │   └── zlib.gpr
│   │       │   │   ├── amd64/
│   │       │   │   │   └── amd64-match.S
│   │       │   │   ├── asm686/
│   │       │   │   │   ├── README.686
│   │       │   │   │   └── match.S
│   │       │   │   ├── blast/
│   │       │   │   │   ├── Makefile
│   │       │   │   │   ├── README
│   │       │   │   │   ├── blast.c
│   │       │   │   │   ├── blast.h
│   │       │   │   │   ├── test.pk
│   │       │   │   │   └── test.txt
│   │       │   │   ├── delphi/
│   │       │   │   │   ├── ZLib.pas
│   │       │   │   │   ├── ZLibConst.pas
│   │       │   │   │   ├── readme.txt
│   │       │   │   │   └── zlibd32.mak
│   │       │   │   ├── dotzlib/
│   │       │   │   │   ├── DotZLib/
│   │       │   │   │   │   ├── AssemblyInfo.cs
│   │       │   │   │   │   ├── ChecksumImpl.cs
│   │       │   │   │   │   ├── CircularBuffer.cs
│   │       │   │   │   │   ├── CodecBase.cs
│   │       │   │   │   │   ├── Deflater.cs
│   │       │   │   │   │   ├── DotZLib.cs
│   │       │   │   │   │   ├── DotZLib.csproj
│   │       │   │   │   │   ├── GZipStream.cs
│   │       │   │   │   │   ├── Inflater.cs
│   │       │   │   │   │   └── UnitTests.cs
│   │       │   │   │   ├── DotZLib.build
│   │       │   │   │   ├── DotZLib.chm
│   │       │   │   │   ├── DotZLib.sln
│   │       │   │   │   ├── LICENSE_1_0.txt
│   │       │   │   │   └── readme.txt
│   │       │   │   ├── gcc_gvmat64/
│   │       │   │   │   └── gvmat64.S
│   │       │   │   ├── infback9/
│   │       │   │   │   ├── README
│   │       │   │   │   ├── infback9.c
│   │       │   │   │   ├── infback9.h
│   │       │   │   │   ├── inffix9.h
│   │       │   │   │   ├── inflate9.h
│   │       │   │   │   ├── inftree9.c
│   │       │   │   │   └── inftree9.h
│   │       │   │   ├── inflate86/
│   │       │   │   │   ├── inffas86.c
│   │       │   │   │   └── inffast.S
│   │       │   │   ├── iostream/
│   │       │   │   │   ├── test.cpp
│   │       │   │   │   ├── zfstream.cpp
│   │       │   │   │   └── zfstream.h
│   │       │   │   ├── iostream2/
│   │       │   │   │   ├── zstream.h
│   │       │   │   │   └── zstream_test.cpp
│   │       │   │   ├── iostream3/
│   │       │   │   │   ├── README
│   │       │   │   │   ├── TODO
│   │       │   │   │   ├── test.cc
│   │       │   │   │   ├── zfstream.cc
│   │       │   │   │   └── zfstream.h
│   │       │   │   ├── masmx64/
│   │       │   │   │   ├── bld_ml64.bat
│   │       │   │   │   ├── gvmat64.asm
│   │       │   │   │   ├── inffas8664.c
│   │       │   │   │   ├── inffasx64.asm
│   │       │   │   │   └── readme.txt
│   │       │   │   ├── masmx86/
│   │       │   │   │   ├── bld_ml32.bat
│   │       │   │   │   ├── inffas32.asm
│   │       │   │   │   ├── match686.asm
│   │       │   │   │   └── readme.txt
│   │       │   │   ├── minizip/
│   │       │   │   │   ├── Makefile
│   │       │   │   │   ├── Makefile.am
│   │       │   │   │   ├── MiniZip64_Changes.txt
│   │       │   │   │   ├── MiniZip64_info.txt
│   │       │   │   │   ├── configure.ac
│   │       │   │   │   ├── crypt.h
│   │       │   │   │   ├── ioapi.c
│   │       │   │   │   ├── ioapi.h
│   │       │   │   │   ├── iowin32.c
│   │       │   │   │   ├── iowin32.h
│   │       │   │   │   ├── make_vms.com
│   │       │   │   │   ├── miniunz.c
│   │       │   │   │   ├── miniunzip.1
│   │       │   │   │   ├── minizip.1
│   │       │   │   │   ├── minizip.c
│   │       │   │   │   ├── minizip.pc.in
│   │       │   │   │   ├── mztools.c
│   │       │   │   │   ├── mztools.h
│   │       │   │   │   ├── unzip.c
│   │       │   │   │   ├── unzip.h
│   │       │   │   │   ├── zip.c
│   │       │   │   │   └── zip.h
│   │       │   │   ├── pascal/
│   │       │   │   │   ├── example.pas
│   │       │   │   │   ├── readme.txt
│   │       │   │   │   ├── zlibd32.mak
│   │       │   │   │   └── zlibpas.pas
│   │       │   │   ├── puff/
│   │       │   │   │   ├── Makefile
│   │       │   │   │   ├── README
│   │       │   │   │   ├── puff.c
│   │       │   │   │   ├── puff.h
│   │       │   │   │   ├── pufftest.c
│   │       │   │   │   └── zeros.raw
│   │       │   │   ├── testzlib/
│   │       │   │   │   ├── testzlib.c
│   │       │   │   │   └── testzlib.txt
│   │       │   │   ├── untgz/
│   │       │   │   │   ├── Makefile
│   │       │   │   │   ├── Makefile.msc
│   │       │   │   │   └── untgz.c
│   │       │   │   └── vstudio/
│   │       │   │       ├── readme.txt
│   │       │   │       ├── vc10/
│   │       │   │       │   ├── miniunz.vcxproj
│   │       │   │       │   ├── miniunz.vcxproj.filters
│   │       │   │       │   ├── minizip.vcxproj
│   │       │   │       │   ├── minizip.vcxproj.filters
│   │       │   │       │   ├── testzlib.vcxproj
│   │       │   │       │   ├── testzlib.vcxproj.filters
│   │       │   │       │   ├── testzlibdll.vcxproj
│   │       │   │       │   ├── testzlibdll.vcxproj.filters
│   │       │   │       │   ├── zlib.rc
│   │       │   │       │   ├── zlibstat.vcxproj
│   │       │   │       │   ├── zlibstat.vcxproj.filters
│   │       │   │       │   ├── zlibvc.def
│   │       │   │       │   ├── zlibvc.sln
│   │       │   │       │   ├── zlibvc.vcxproj
│   │       │   │       │   └── zlibvc.vcxproj.filters
│   │       │   │       ├── vc11/
│   │       │   │       │   ├── miniunz.vcxproj
│   │       │   │       │   ├── minizip.vcxproj
│   │       │   │       │   ├── testzlib.vcxproj
│   │       │   │       │   ├── testzlibdll.vcxproj
│   │       │   │       │   ├── zlib.rc
│   │       │   │       │   ├── zlibstat.vcxproj
│   │       │   │       │   ├── zlibvc.def
│   │       │   │       │   ├── zlibvc.sln
│   │       │   │       │   └── zlibvc.vcxproj
│   │       │   │       └── vc9/
│   │       │   │           ├── miniunz.vcproj
│   │       │   │           ├── minizip.vcproj
│   │       │   │           ├── testzlib.vcproj
│   │       │   │           ├── testzlibdll.vcproj
│   │       │   │           ├── zlib.rc
│   │       │   │           ├── zlibstat.vcproj
│   │       │   │           ├── zlibvc.def
│   │       │   │           ├── zlibvc.sln
│   │       │   │           └── zlibvc.vcproj
│   │       │   ├── crc32.c
│   │       │   ├── crc32.h
│   │       │   ├── deflate.c
│   │       │   ├── deflate.h
│   │       │   ├── doc/
│   │       │   │   ├── algorithm.txt
│   │       │   │   ├── rfc1950.txt
│   │       │   │   ├── rfc1951.txt
│   │       │   │   ├── rfc1952.txt
│   │       │   │   └── txtvsbin.txt
│   │       │   ├── examples/
│   │       │   │   ├── README.examples
│   │       │   │   ├── enough.c
│   │       │   │   ├── fitblk.c
│   │       │   │   ├── gun.c
│   │       │   │   ├── gzappend.c
│   │       │   │   ├── gzjoin.c
│   │       │   │   ├── gzlog.c
│   │       │   │   ├── gzlog.h
│   │       │   │   ├── zlib_how.html
│   │       │   │   ├── zpipe.c
│   │       │   │   └── zran.c
│   │       │   ├── gzclose.c
│   │       │   ├── gzguts.h
│   │       │   ├── gzlib.c
│   │       │   ├── gzread.c
│   │       │   ├── gzwrite.c
│   │       │   ├── infback.c
│   │       │   ├── inffast.c
│   │       │   ├── inffast.h
│   │       │   ├── inffixed.h
│   │       │   ├── inflate.c
│   │       │   ├── inflate.h
│   │       │   ├── inftrees.c
│   │       │   ├── inftrees.h
│   │       │   ├── make_vms.com
│   │       │   ├── msdos/
│   │       │   │   ├── Makefile.bor
│   │       │   │   ├── Makefile.dj2
│   │       │   │   ├── Makefile.emx
│   │       │   │   ├── Makefile.msc
│   │       │   │   └── Makefile.tc
│   │       │   ├── nintendods/
│   │       │   │   ├── Makefile
│   │       │   │   └── README
│   │       │   ├── old/
│   │       │   │   ├── Makefile.emx
│   │       │   │   ├── Makefile.riscos
│   │       │   │   ├── README
│   │       │   │   ├── descrip.mms
│   │       │   │   ├── os2/
│   │       │   │   │   ├── Makefile.os2
│   │       │   │   │   └── zlib.def
│   │       │   │   └── visual-basic.txt
│   │       │   ├── qnx/
│   │       │   │   └── package.qpg
│   │       │   ├── test/
│   │       │   │   ├── example.c
│   │       │   │   ├── infcover.c
│   │       │   │   └── minigzip.c
│   │       │   ├── treebuild.xml
│   │       │   ├── trees.c
│   │       │   ├── trees.h
│   │       │   ├── uncompr.c
│   │       │   ├── watcom/
│   │       │   │   ├── watcom_f.mak
│   │       │   │   └── watcom_l.mak
│   │       │   ├── win32/
│   │       │   │   ├── DLL_FAQ.txt
│   │       │   │   ├── Makefile.bor
│   │       │   │   ├── Makefile.gcc
│   │       │   │   ├── Makefile.msc
│   │       │   │   ├── README-WIN32.txt
│   │       │   │   ├── VisualC.txt
│   │       │   │   ├── zlib.def
│   │       │   │   └── zlib1.rc
│   │       │   ├── zconf.h
│   │       │   ├── zconf.h.cmakein
│   │       │   ├── zconf.h.in
│   │       │   ├── zlib.3
│   │       │   ├── zlib.h
│   │       │   ├── zlib.pc
│   │       │   ├── zlib.pc.cmakein
│   │       │   ├── zlib.pc.in
│   │       │   ├── zlib2ansi
│   │       │   ├── zutil.c
│   │       │   └── zutil.h
│   │       └── update_zlib.sh
│   ├── frameworks/
│   │   ├── base/
│   │   │   ├── include/
│   │   │   │   ├── android_runtime/
│   │   │   │   │   ├── AndroidRuntime.h
│   │   │   │   │   ├── Log.h
│   │   │   │   │   ├── android_app_NativeActivity.h
│   │   │   │   │   ├── android_content_res_Configuration.h
│   │   │   │   │   ├── android_graphics_SurfaceTexture.h
│   │   │   │   │   ├── android_hardware_camera2_CameraMetadata.h
│   │   │   │   │   ├── android_util_AssetManager.h
│   │   │   │   │   ├── android_view_InputQueue.h
│   │   │   │   │   ├── android_view_Surface.h
│   │   │   │   │   └── android_view_SurfaceSession.h
│   │   │   │   ├── androidfw/
│   │   │   │   │   ├── Asset.h
│   │   │   │   │   ├── AssetDir.h
│   │   │   │   │   ├── AssetManager.h
│   │   │   │   │   ├── AttributeFinder.h
│   │   │   │   │   ├── BackupHelpers.h
│   │   │   │   │   ├── ByteBucketArray.h
│   │   │   │   │   ├── CursorWindow.h
│   │   │   │   │   ├── DisplayEventDispatcher.h
│   │   │   │   │   ├── LocaleData.h
│   │   │   │   │   ├── ObbFile.h
│   │   │   │   │   ├── ResourcePackageId.h
│   │   │   │   │   ├── ResourceTypes.h
│   │   │   │   │   ├── StreamingZipInflater.h
│   │   │   │   │   ├── TypeWrappers.h
│   │   │   │   │   ├── ZipFileRO.h
│   │   │   │   │   ├── ZipUtils.h
│   │   │   │   │   └── misc.h
│   │   │   │   ├── private/
│   │   │   │   │   ├── README
│   │   │   │   │   └── hwui/
│   │   │   │   │       └── DrawGlInfo.h
│   │   │   │   └── storage/
│   │   │   │       ├── IMountService.h
│   │   │   │       ├── IMountServiceListener.h
│   │   │   │       ├── IMountShutdownObserver.h
│   │   │   │       └── IObbActionListener.h
│   │   │   ├── libs/
│   │   │   │   └── androidfw/
│   │   │   │       ├── Android.mk
│   │   │   │       ├── Asset.cpp
│   │   │   │       ├── AssetDir.cpp
│   │   │   │       ├── AssetManager.cpp
│   │   │   │       ├── BackupData.cpp
│   │   │   │       ├── BackupHelpers.cpp
│   │   │   │       ├── CursorWindow.cpp
│   │   │   │       ├── DisplayEventDispatcher.cpp
│   │   │   │       ├── LocaleData.cpp
│   │   │   │       ├── LocaleDataTables.cpp
│   │   │   │       ├── MODULE_LICENSE_APACHE2
│   │   │   │       ├── NOTICE
│   │   │   │       ├── ObbFile.cpp
│   │   │   │       ├── ResourceTypes.cpp
│   │   │   │       ├── StreamingZipInflater.cpp
│   │   │   │       ├── TypeWrappers.cpp
│   │   │   │       ├── ZipFileRO.cpp
│   │   │   │       ├── ZipUtils.cpp
│   │   │   │       ├── misc.cpp
│   │   │   │       └── tests/
│   │   │   │           ├── Android.mk
│   │   │   │           ├── AttributeFinder_test.cpp
│   │   │   │           ├── BackupData_test.cpp
│   │   │   │           ├── ByteBucketArray_test.cpp
│   │   │   │           ├── ConfigLocale_test.cpp
│   │   │   │           ├── Config_test.cpp
│   │   │   │           ├── Idmap_test.cpp
│   │   │   │           ├── ObbFile_test.cpp
│   │   │   │           ├── ResTable_test.cpp
│   │   │   │           ├── Split_test.cpp
│   │   │   │           ├── TestHelpers.cpp
│   │   │   │           ├── TestHelpers.h
│   │   │   │           ├── Theme_test.cpp
│   │   │   │           ├── TypeWrappers_test.cpp
│   │   │   │           ├── ZipUtils_test.cpp
│   │   │   │           └── data/
│   │   │   │               ├── .gitignore
│   │   │   │               ├── app/
│   │   │   │               │   ├── AndroidManifest.xml
│   │   │   │               │   ├── R.h
│   │   │   │               │   ├── app_arsc.h
│   │   │   │               │   ├── build
│   │   │   │               │   └── res/
│   │   │   │               │       └── values/
│   │   │   │               │           └── values.xml
│   │   │   │               ├── basic/
│   │   │   │               │   ├── AndroidManifest.xml
│   │   │   │               │   ├── R.h
│   │   │   │               │   ├── basic_arsc.h
│   │   │   │               │   ├── build
│   │   │   │               │   ├── res/
│   │   │   │               │   │   ├── layout/
│   │   │   │               │   │   │   └── main.xml
│   │   │   │               │   │   ├── layout-fr-sw600dp/
│   │   │   │               │   │   │   └── main.xml
│   │   │   │               │   │   ├── values/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   ├── values-de/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   ├── values-fr/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   ├── values-hdpi/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   ├── values-sv/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   ├── values-xhdpi/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   └── values-xxhdpi/
│   │   │   │               │   │       └── values.xml
│   │   │   │               │   ├── split_de_fr_arsc.h
│   │   │   │               │   ├── split_hdpi_v4_arsc.h
│   │   │   │               │   ├── split_xhdpi_v4_arsc.h
│   │   │   │               │   └── split_xxhdpi_v4_arsc.h
│   │   │   │               ├── feature/
│   │   │   │               │   ├── AndroidManifest.xml
│   │   │   │               │   ├── build
│   │   │   │               │   ├── feature_arsc.h
│   │   │   │               │   └── res/
│   │   │   │               │       └── values/
│   │   │   │               │           └── values.xml
│   │   │   │               ├── lib/
│   │   │   │               │   ├── AndroidManifest.xml
│   │   │   │               │   ├── R.h
│   │   │   │               │   ├── build
│   │   │   │               │   ├── lib_arsc.h
│   │   │   │               │   └── res/
│   │   │   │               │       └── values/
│   │   │   │               │           └── values.xml
│   │   │   │               ├── overlay/
│   │   │   │               │   ├── AndroidManifest.xml
│   │   │   │               │   ├── build
│   │   │   │               │   ├── overlay_arsc.h
│   │   │   │               │   └── res/
│   │   │   │               │       └── values/
│   │   │   │               │           └── values.xml
│   │   │   │               └── system/
│   │   │   │                   ├── AndroidManifest.xml
│   │   │   │                   ├── R.h
│   │   │   │                   ├── build
│   │   │   │                   ├── res/
│   │   │   │                   │   └── values/
│   │   │   │                   │       └── themes.xml
│   │   │   │                   └── system_arsc.h
│   │   │   └── tools/
│   │   │       └── aapt/
│   │   │           ├── AaptAssets.cpp
│   │   │           ├── AaptAssets.h
│   │   │           ├── AaptConfig.cpp
│   │   │           ├── AaptConfig.h
│   │   │           ├── AaptUtil.cpp
│   │   │           ├── AaptUtil.h
│   │   │           ├── AaptXml.cpp
│   │   │           ├── AaptXml.h
│   │   │           ├── Android.mk
│   │   │           ├── ApkBuilder.cpp
│   │   │           ├── ApkBuilder.h
│   │   │           ├── Bundle.h
│   │   │           ├── CacheUpdater.h
│   │   │           ├── Command.cpp
│   │   │           ├── ConfigDescription.h
│   │   │           ├── CrunchCache.cpp
│   │   │           ├── CrunchCache.h
│   │   │           ├── DirectoryWalker.h
│   │   │           ├── FileFinder.cpp
│   │   │           ├── FileFinder.h
│   │   │           ├── Images.cpp
│   │   │           ├── Images.h
│   │   │           ├── IndentPrinter.h
│   │   │           ├── Main.cpp
│   │   │           ├── Main.h
│   │   │           ├── NOTICE
│   │   │           ├── OutputSet.h
│   │   │           ├── Package.cpp
│   │   │           ├── Resource.cpp
│   │   │           ├── ResourceFilter.cpp
│   │   │           ├── ResourceFilter.h
│   │   │           ├── ResourceIdCache.cpp
│   │   │           ├── ResourceIdCache.h
│   │   │           ├── ResourceTable.cpp
│   │   │           ├── ResourceTable.h
│   │   │           ├── SdkConstants.h
│   │   │           ├── SourcePos.cpp
│   │   │           ├── SourcePos.h
│   │   │           ├── StringPool.cpp
│   │   │           ├── StringPool.h
│   │   │           ├── Symbol.h
│   │   │           ├── WorkQueue.cpp
│   │   │           ├── WorkQueue.h
│   │   │           ├── XMLNode.cpp
│   │   │           ├── XMLNode.h
│   │   │           ├── ZipEntry.cpp
│   │   │           ├── ZipEntry.h
│   │   │           ├── ZipFile.cpp
│   │   │           ├── ZipFile.h
│   │   │           ├── pseudolocalize.cpp
│   │   │           ├── pseudolocalize.h
│   │   │           └── tests/
│   │   │               ├── AaptConfig_test.cpp
│   │   │               ├── AaptGroupEntry_test.cpp
│   │   │               ├── CrunchCache_test.cpp
│   │   │               ├── FileFinder_test.cpp
│   │   │               ├── MockCacheUpdater.h
│   │   │               ├── MockDirectoryWalker.h
│   │   │               ├── MockFileFinder.h
│   │   │               ├── Pseudolocales_test.cpp
│   │   │               ├── ResourceFilter_test.cpp
│   │   │               ├── ResourceTable_test.cpp
│   │   │               ├── TestHelper.h
│   │   │               └── plurals/
│   │   │                   ├── AndroidManifest.xml
│   │   │                   ├── res/
│   │   │                   │   └── values/
│   │   │                   │       └── strings.xml
│   │   │                   └── run.sh
│   │   └── native/
│   │       └── include/
│   │           ├── android/
│   │           │   ├── asset_manager.h
│   │           │   ├── asset_manager_jni.h
│   │           │   ├── bitmap.h
│   │           │   ├── choreographer.h
│   │           │   ├── configuration.h
│   │           │   ├── input.h
│   │           │   ├── keycodes.h
│   │           │   ├── looper.h
│   │           │   ├── multinetwork.h
│   │           │   ├── native_activity.h
│   │           │   ├── native_window.h
│   │           │   ├── native_window_jni.h
│   │           │   ├── obb.h
│   │           │   ├── rect.h
│   │           │   ├── sensor.h
│   │           │   ├── storage_manager.h
│   │           │   ├── trace.h
│   │           │   └── window.h
│   │           ├── batteryservice/
│   │           │   ├── BatteryService.h
│   │           │   ├── IBatteryPropertiesListener.h
│   │           │   └── IBatteryPropertiesRegistrar.h
│   │           ├── binder/
│   │           │   ├── AppOpsManager.h
│   │           │   ├── Binder.h
│   │           │   ├── BinderService.h
│   │           │   ├── BpBinder.h
│   │           │   ├── BufferedTextOutput.h
│   │           │   ├── Debug.h
│   │           │   ├── IAppOpsCallback.h
│   │           │   ├── IAppOpsService.h
│   │           │   ├── IBatteryStats.h
│   │           │   ├── IBinder.h
│   │           │   ├── IInterface.h
│   │           │   ├── IMediaResourceMonitor.h
│   │           │   ├── IMemory.h
│   │           │   ├── IPCThreadState.h
│   │           │   ├── IPermissionController.h
│   │           │   ├── IProcessInfoService.h
│   │           │   ├── IResultReceiver.h
│   │           │   ├── IServiceManager.h
│   │           │   ├── MemoryBase.h
│   │           │   ├── MemoryDealer.h
│   │           │   ├── MemoryHeapBase.h
│   │           │   ├── Parcel.h
│   │           │   ├── Parcelable.h
│   │           │   ├── PermissionCache.h
│   │           │   ├── PersistableBundle.h
│   │           │   ├── ProcessInfoService.h
│   │           │   ├── ProcessState.h
│   │           │   ├── Status.h
│   │           │   └── TextOutput.h
│   │           ├── diskusage/
│   │           │   └── dirsize.h
│   │           ├── gui/
│   │           │   ├── BitTube.h
│   │           │   ├── BufferItem.h
│   │           │   ├── BufferItemConsumer.h
│   │           │   ├── BufferQueue.h
│   │           │   ├── BufferQueueConsumer.h
│   │           │   ├── BufferQueueCore.h
│   │           │   ├── BufferQueueDefs.h
│   │           │   ├── BufferQueueProducer.h
│   │           │   ├── BufferSlot.h
│   │           │   ├── ConsumerBase.h
│   │           │   ├── CpuConsumer.h
│   │           │   ├── DisplayEventReceiver.h
│   │           │   ├── GLConsumer.h
│   │           │   ├── GraphicBufferAlloc.h
│   │           │   ├── GuiConfig.h
│   │           │   ├── IConsumerListener.h
│   │           │   ├── IDisplayEventConnection.h
│   │           │   ├── IGraphicBufferAlloc.h
│   │           │   ├── IGraphicBufferConsumer.h
│   │           │   ├── IGraphicBufferProducer.h
│   │           │   ├── IProducerListener.h
│   │           │   ├── ISensorEventConnection.h
│   │           │   ├── ISensorServer.h
│   │           │   ├── ISurfaceComposer.h
│   │           │   ├── ISurfaceComposerClient.h
│   │           │   ├── Sensor.h
│   │           │   ├── SensorEventQueue.h
│   │           │   ├── SensorManager.h
│   │           │   ├── StreamSplitter.h
│   │           │   ├── Surface.h
│   │           │   ├── SurfaceComposerClient.h
│   │           │   └── SurfaceControl.h
│   │           ├── input/
│   │           │   ├── IInputFlinger.h
│   │           │   ├── Input.h
│   │           │   ├── InputDevice.h
│   │           │   ├── InputEventLabels.h
│   │           │   ├── InputTransport.h
│   │           │   ├── KeyCharacterMap.h
│   │           │   ├── KeyLayoutMap.h
│   │           │   ├── Keyboard.h
│   │           │   ├── VelocityControl.h
│   │           │   ├── VelocityTracker.h
│   │           │   └── VirtualKeyMap.h
│   │           ├── media/
│   │           │   ├── drm/
│   │           │   │   └── DrmAPI.h
│   │           │   ├── editor/
│   │           │   │   └── II420ColorConverter.h
│   │           │   ├── hardware/
│   │           │   │   ├── CryptoAPI.h
│   │           │   │   ├── HDCPAPI.h
│   │           │   │   ├── HardwareAPI.h
│   │           │   │   ├── MetadataBufferType.h
│   │           │   │   ├── OMXPluginBase.h
│   │           │   │   └── VideoAPI.h
│   │           │   └── openmax/
│   │           │       ├── OMX_AsString.h
│   │           │       ├── OMX_Audio.h
│   │           │       ├── OMX_AudioExt.h
│   │           │       ├── OMX_Component.h
│   │           │       ├── OMX_ContentPipe.h
│   │           │       ├── OMX_Core.h
│   │           │       ├── OMX_IVCommon.h
│   │           │       ├── OMX_Image.h
│   │           │       ├── OMX_Index.h
│   │           │       ├── OMX_IndexExt.h
│   │           │       ├── OMX_Other.h
│   │           │       ├── OMX_Types.h
│   │           │       ├── OMX_Video.h
│   │           │       └── OMX_VideoExt.h
│   │           ├── powermanager/
│   │           │   ├── IPowerManager.h
│   │           │   └── PowerManager.h
│   │           ├── private/
│   │           │   ├── binder/
│   │           │   │   ├── Static.h
│   │           │   │   └── binder_module.h
│   │           │   ├── gui/
│   │           │   │   ├── ComposerService.h
│   │           │   │   ├── LayerState.h
│   │           │   │   └── SyncFeatures.h
│   │           │   └── ui/
│   │           │       └── RegionHelper.h
│   │           └── ui/
│   │               ├── ANativeObjectBase.h
│   │               ├── DisplayInfo.h
│   │               ├── DisplayStatInfo.h
│   │               ├── Fence.h
│   │               ├── FrameStats.h
│   │               ├── GraphicBuffer.h
│   │               ├── GraphicBufferAllocator.h
│   │               ├── GraphicBufferMapper.h
│   │               ├── HdrCapabilities.h
│   │               ├── PixelFormat.h
│   │               ├── Point.h
│   │               ├── Rect.h
│   │               ├── Region.h
│   │               ├── TMatHelpers.h
│   │               ├── TVecHelpers.h
│   │               ├── UiConfig.h
│   │               ├── mat4.h
│   │               ├── vec2.h
│   │               ├── vec3.h
│   │               └── vec4.h
│   ├── libnativehelper/
│   │   ├── ALog-priv.h
│   │   ├── Android.mk
│   │   ├── AsynchronousCloseMonitor.cpp
│   │   ├── JNIHelp.cpp
│   │   ├── JniConstants.cpp
│   │   ├── JniInvocation.cpp
│   │   ├── MODULE_LICENSE_APACHE2
│   │   ├── NOTICE
│   │   ├── README
│   │   ├── include/
│   │   │   └── nativehelper/
│   │   │       ├── AsynchronousCloseMonitor.h
│   │   │       ├── JNIHelp.h
│   │   │       ├── JniConstants.h
│   │   │       ├── JniInvocation.h
│   │   │       ├── ScopedBytes.h
│   │   │       ├── ScopedFd.h
│   │   │       ├── ScopedLocalFrame.h
│   │   │       ├── ScopedLocalRef.h
│   │   │       ├── ScopedPrimitiveArray.h
│   │   │       ├── ScopedStringChars.h
│   │   │       ├── ScopedUtfChars.h
│   │   │       ├── UniquePtr.h
│   │   │       ├── jni.h
│   │   │       └── toStringArray.h
│   │   ├── tests/
│   │   │   ├── Android.mk
│   │   │   └── JniInvocation_test.cpp
│   │   └── toStringArray.cpp
│   ├── patch/
│   │   ├── 0001-patch-code.patch
│   │   ├── 0002-static-build.patch
│   │   └── 003-rewrite-parseResourceName.patch
│   └── system/
│       └── core/
│           ├── base/
│           │   ├── .clang-format
│           │   ├── Android.mk
│           │   ├── CPPLINT.cfg
│           │   ├── errors_test.cpp
│           │   ├── errors_unix.cpp
│           │   ├── errors_windows.cpp
│           │   ├── file.cpp
│           │   ├── file_test.cpp
│           │   ├── include/
│           │   │   └── android-base/
│           │   │       ├── errors.h
│           │   │       ├── file.h
│           │   │       ├── logging.h
│           │   │       ├── macros.h
│           │   │       ├── memory.h
│           │   │       ├── parseint.h
│           │   │       ├── parsenetaddress.h
│           │   │       ├── stringprintf.h
│           │   │       ├── strings.h
│           │   │       ├── test_utils.h
│           │   │       ├── thread_annotations.h
│           │   │       ├── unique_fd.h
│           │   │       └── utf8.h
│           │   ├── logging.cpp
│           │   ├── logging_test.cpp
│           │   ├── parseint_test.cpp
│           │   ├── parsenetaddress.cpp
│           │   ├── parsenetaddress_test.cpp
│           │   ├── stringprintf.cpp
│           │   ├── stringprintf_test.cpp
│           │   ├── strings.cpp
│           │   ├── strings_test.cpp
│           │   ├── test_main.cpp
│           │   ├── test_utils.cpp
│           │   ├── utf8.cpp
│           │   └── utf8_test.cpp
│           ├── include/
│           │   ├── android/
│           │   │   └── log.h
│           │   ├── backtrace/
│           │   │   ├── Backtrace.h
│           │   │   ├── BacktraceMap.h
│           │   │   └── backtrace_constants.h
│           │   ├── binderwrapper/
│           │   │   ├── binder_test_base.h
│           │   │   ├── binder_wrapper.h
│           │   │   └── stub_binder_wrapper.h
│           │   ├── cutils/
│           │   │   ├── android_reboot.h
│           │   │   ├── ashmem.h
│           │   │   ├── atomic.h
│           │   │   ├── bitops.h
│           │   │   ├── compiler.h
│           │   │   ├── config_utils.h
│           │   │   ├── debugger.h
│           │   │   ├── fs.h
│           │   │   ├── hashmap.h
│           │   │   ├── iosched_policy.h
│           │   │   ├── jstring.h
│           │   │   ├── klog.h
│           │   │   ├── list.h
│           │   │   ├── log.h
│           │   │   ├── memory.h
│           │   │   ├── misc.h
│           │   │   ├── multiuser.h
│           │   │   ├── native_handle.h
│           │   │   ├── open_memstream.h
│           │   │   ├── partition_utils.h
│           │   │   ├── process_name.h
│           │   │   ├── properties.h
│           │   │   ├── qtaguid.h
│           │   │   ├── record_stream.h
│           │   │   ├── sched_policy.h
│           │   │   ├── sockets.h
│           │   │   ├── str_parms.h
│           │   │   ├── threads.h
│           │   │   ├── trace.h
│           │   │   └── uevent.h
│           │   ├── diskconfig/
│           │   │   └── diskconfig.h
│           │   ├── log/
│           │   │   ├── event_tag_map.h
│           │   │   ├── log.h
│           │   │   ├── log_read.h
│           │   │   ├── logd.h
│           │   │   ├── logger.h
│           │   │   ├── logprint.h
│           │   │   └── uio.h
│           │   ├── memtrack/
│           │   │   └── memtrack.h
│           │   ├── mincrypt/
│           │   │   ├── dsa_sig.h
│           │   │   ├── hash-internal.h
│           │   │   ├── p256.h
│           │   │   ├── p256_ecdsa.h
│           │   │   ├── rsa.h
│           │   │   ├── sha.h
│           │   │   └── sha256.h
│           │   ├── nativebridge/
│           │   │   └── native_bridge.h
│           │   ├── netutils/
│           │   │   └── ifc.h
│           │   ├── private/
│           │   │   ├── android_filesystem_capability.h
│           │   │   ├── android_filesystem_config.h
│           │   │   ├── android_logger.h
│           │   │   └── canned_fs_config.h
│           │   ├── system/
│           │   │   ├── camera.h
│           │   │   ├── graphics.h
│           │   │   ├── radio.h
│           │   │   ├── thread_defs.h
│           │   │   └── window.h
│           │   ├── sysutils/
│           │   │   ├── FrameworkClient.h
│           │   │   ├── FrameworkCommand.h
│           │   │   ├── FrameworkListener.h
│           │   │   ├── List.h
│           │   │   ├── NetlinkEvent.h
│           │   │   ├── NetlinkListener.h
│           │   │   ├── ServiceManager.h
│           │   │   ├── SocketClient.h
│           │   │   ├── SocketClientCommand.h
│           │   │   └── SocketListener.h
│           │   ├── usbhost/
│           │   │   └── usbhost.h
│           │   ├── utils/
│           │   │   ├── AndroidThreads.h
│           │   │   ├── Atomic.h
│           │   │   ├── BitSet.h
│           │   │   ├── BlobCache.h
│           │   │   ├── ByteOrder.h
│           │   │   ├── CallStack.h
│           │   │   ├── Compat.h
│           │   │   ├── Condition.h
│           │   │   ├── Debug.h
│           │   │   ├── Endian.h
│           │   │   ├── Errors.h
│           │   │   ├── FileMap.h
│           │   │   ├── Flattenable.h
│           │   │   ├── Functor.h
│           │   │   ├── JenkinsHash.h
│           │   │   ├── KeyedVector.h
│           │   │   ├── LinearTransform.h
│           │   │   ├── List.h
│           │   │   ├── Log.h
│           │   │   ├── Looper.h
│           │   │   ├── LruCache.h
│           │   │   ├── Mutex.h
│           │   │   ├── NativeHandle.h
│           │   │   ├── Printer.h
│           │   │   ├── ProcessCallStack.h
│           │   │   ├── PropertyMap.h
│           │   │   ├── RWLock.h
│           │   │   ├── RefBase.h
│           │   │   ├── Singleton.h
│           │   │   ├── SortedVector.h
│           │   │   ├── StopWatch.h
│           │   │   ├── String16.h
│           │   │   ├── String8.h
│           │   │   ├── StrongPointer.h
│           │   │   ├── SystemClock.h
│           │   │   ├── Thread.h
│           │   │   ├── ThreadDefs.h
│           │   │   ├── Timers.h
│           │   │   ├── Tokenizer.h
│           │   │   ├── Trace.h
│           │   │   ├── TypeHelpers.h
│           │   │   ├── Unicode.h
│           │   │   ├── Vector.h
│           │   │   ├── VectorImpl.h
│           │   │   ├── ashmem.h
│           │   │   ├── misc.h
│           │   │   └── threads.h
│           │   └── ziparchive/
│           │       ├── zip_archive.h
│           │       ├── zip_archive_stream_entry.h
│           │       └── zip_writer.h
│           ├── libcutils/
│           │   ├── Android.mk
│           │   ├── MODULE_LICENSE_APACHE2
│           │   ├── NOTICE
│           │   ├── android_reboot.c
│           │   ├── arch-arm/
│           │   │   └── memset32.S
│           │   ├── arch-arm64/
│           │   │   └── android_memset.S
│           │   ├── arch-mips/
│           │   │   └── android_memset.c
│           │   ├── arch-x86/
│           │   │   ├── android_memset16.S
│           │   │   ├── android_memset32.S
│           │   │   └── cache.h
│           │   ├── arch-x86_64/
│           │   │   ├── android_memset16.S
│           │   │   ├── android_memset32.S
│           │   │   └── cache.h
│           │   ├── ashmem-dev.c
│           │   ├── ashmem-host.c
│           │   ├── atomic.c
│           │   ├── canned_fs_config.c
│           │   ├── config_utils.c
│           │   ├── debugger.c
│           │   ├── dlmalloc_stubs.c
│           │   ├── fs.c
│           │   ├── fs_config.c
│           │   ├── hashmap.c
│           │   ├── iosched_policy.c
│           │   ├── klog.c
│           │   ├── load_file.c
│           │   ├── multiuser.c
│           │   ├── native_handle.c
│           │   ├── open_memstream.c
│           │   ├── partition_utils.c
│           │   ├── process_name.c
│           │   ├── properties.c
│           │   ├── qtaguid.c
│           │   ├── record_stream.c
│           │   ├── sched_policy.c
│           │   ├── socket_inaddr_any_server_unix.c
│           │   ├── socket_inaddr_any_server_windows.c
│           │   ├── socket_local_client_unix.c
│           │   ├── socket_local_server_unix.c
│           │   ├── socket_local_unix.h
│           │   ├── socket_loopback_client_unix.c
│           │   ├── socket_loopback_server_unix.c
│           │   ├── socket_network_client_unix.c
│           │   ├── socket_network_client_windows.c
│           │   ├── sockets.cpp
│           │   ├── sockets_unix.cpp
│           │   ├── sockets_windows.cpp
│           │   ├── str_parms.c
│           │   ├── strdup16to8.c
│           │   ├── strdup8to16.c
│           │   ├── strlcpy.c
│           │   ├── tests/
│           │   │   ├── Android.mk
│           │   │   ├── MemsetTest.cpp
│           │   │   ├── PropertiesTest.cpp
│           │   │   └── test_str_parms.cpp
│           │   ├── threads.c
│           │   ├── trace-dev.c
│           │   ├── trace-host.c
│           │   └── uevent.c
│           ├── liblog/
│           │   ├── Android.bp
│           │   ├── Android.mk
│           │   ├── NOTICE
│           │   ├── README
│           │   ├── config_read.c
│           │   ├── config_read.h
│           │   ├── config_write.c
│           │   ├── config_write.h
│           │   ├── event.logtags
│           │   ├── event_tag_map.c
│           │   ├── fake_log_device.c
│           │   ├── fake_log_device.h
│           │   ├── fake_writer.c
│           │   ├── log_event_list.c
│           │   ├── log_event_write.c
│           │   ├── log_is_loggable.c
│           │   ├── log_portability.h
│           │   ├── log_time.cpp
│           │   ├── logd_reader.c
│           │   ├── logd_writer.c
│           │   ├── logger.h
│           │   ├── logger_lock.c
│           │   ├── logger_name.c
│           │   ├── logger_read.c
│           │   ├── logger_write.c
│           │   ├── logprint.c
│           │   ├── pmsg_reader.c
│           │   ├── pmsg_writer.c
│           │   ├── tests/
│           │   │   ├── Android.mk
│           │   │   ├── benchmark.h
│           │   │   ├── benchmark_main.cpp
│           │   │   ├── libc_test.cpp
│           │   │   ├── liblog_benchmark.cpp
│           │   │   └── liblog_test.cpp
│           │   └── uio.c
│           ├── libutils/
│           │   ├── Android.mk
│           │   ├── BlobCache.cpp
│           │   ├── CallStack.cpp
│           │   ├── CleanSpec.mk
│           │   ├── FileMap.cpp
│           │   ├── JenkinsHash.cpp
│           │   ├── LinearTransform.cpp
│           │   ├── Log.cpp
│           │   ├── Looper.cpp
│           │   ├── MODULE_LICENSE_APACHE2
│           │   ├── NOTICE
│           │   ├── NativeHandle.cpp
│           │   ├── Printer.cpp
│           │   ├── ProcessCallStack.cpp
│           │   ├── PropertyMap.cpp
│           │   ├── README
│           │   ├── RefBase.cpp
│           │   ├── SharedBuffer.cpp
│           │   ├── SharedBuffer.h
│           │   ├── SharedBufferTest.cpp
│           │   ├── Static.cpp
│           │   ├── StopWatch.cpp
│           │   ├── String16.cpp
│           │   ├── String8.cpp
│           │   ├── SystemClock.cpp
│           │   ├── Threads.cpp
│           │   ├── Timers.cpp
│           │   ├── Tokenizer.cpp
│           │   ├── Trace.cpp
│           │   ├── Unicode.cpp
│           │   ├── VectorImpl.cpp
│           │   ├── misc.cpp
│           │   ├── primes.py
│           │   └── tests/
│           │       ├── Android.mk
│           │       ├── BitSet_test.cpp
│           │       ├── BlobCache_test.cpp
│           │       ├── Looper_test.cpp
│           │       ├── LruCache_test.cpp
│           │       ├── String8_test.cpp
│           │       ├── StrongPointer_test.cpp
│           │       ├── TestHelpers.h
│           │       ├── Unicode_test.cpp
│           │       └── Vector_test.cpp
│           └── libziparchive/
│               ├── Android.mk
│               ├── entry_name_utils-inl.h
│               ├── entry_name_utils_test.cc
│               ├── zip_archive.cc
│               ├── zip_archive_common.h
│               ├── zip_archive_private.h
│               ├── zip_archive_stream_entry.cc
│               ├── zip_archive_test.cc
│               ├── zip_writer.cc
│               └── zip_writer_test.cc
├── atlas-aapt-old/
│   └── frameworks/
│       └── base/
│           ├── include/
│           │   └── androidfw/
│           │       ├── Asset.h
│           │       ├── AssetDir.h
│           │       ├── AssetManager.h
│           │       ├── BackupHelpers.h
│           │       ├── ByteBucketArray.h
│           │       ├── CursorWindow.h
│           │       ├── ObbFile.h
│           │       ├── ResourcePackageId.h
│           │       ├── ResourceTypes.h
│           │       ├── StreamingZipInflater.h
│           │       ├── TypeWrappers.h
│           │       ├── ZipFileRO.h
│           │       ├── ZipUtils.h
│           │       └── misc.h
│           ├── libs/
│           │   └── androidfw/
│           │       ├── Android.mk
│           │       ├── Asset.cpp
│           │       ├── AssetDir.cpp
│           │       ├── AssetManager.cpp
│           │       ├── BackupData.cpp
│           │       ├── BackupHelpers.cpp
│           │       ├── CursorWindow.cpp
│           │       ├── MODULE_LICENSE_APACHE2
│           │       ├── NOTICE
│           │       ├── ObbFile.cpp
│           │       ├── ResourceTypes.cpp
│           │       ├── StreamingZipInflater.cpp
│           │       ├── TypeWrappers.cpp
│           │       ├── ZipFileRO.cpp
│           │       ├── ZipUtils.cpp
│           │       ├── misc.cpp
│           │       └── tests/
│           │           ├── Android.mk
│           │           ├── BackupData_test.cpp
│           │           ├── ByteBucketArray_test.cpp
│           │           ├── ConfigLocale_test.cpp
│           │           ├── Config_test.cpp
│           │           ├── Idmap_test.cpp
│           │           ├── ObbFile_test.cpp
│           │           ├── ResTable_test.cpp
│           │           ├── Split_test.cpp
│           │           ├── TestHelpers.h
│           │           ├── Theme_test.cpp
│           │           ├── TypeWrappers_test.cpp
│           │           ├── ZipUtils_test.cpp
│           │           └── data/
│           │               ├── .gitignore
│           │               ├── app/
│           │               │   ├── AndroidManifest.xml
│           │               │   ├── R.h
│           │               │   ├── app_arsc.h
│           │               │   └── res/
│           │               │       └── values/
│           │               │           └── values.xml
│           │               ├── basic/
│           │               │   ├── AndroidManifest.xml
│           │               │   ├── R.h
│           │               │   ├── basic_arsc.h
│           │               │   ├── res/
│           │               │   │   ├── layout/
│           │               │   │   │   └── main.xml
│           │               │   │   ├── layout-fr-sw600dp/
│           │               │   │   │   └── main.xml
│           │               │   │   ├── values/
│           │               │   │   │   └── values.xml
│           │               │   │   ├── values-de/
│           │               │   │   │   └── values.xml
│           │               │   │   ├── values-fr/
│           │               │   │   │   └── values.xml
│           │               │   │   └── values-sv/
│           │               │   │       └── values.xml
│           │               │   └── split_de_fr_arsc.h
│           │               ├── feature/
│           │               │   ├── AndroidManifest.xml
│           │               │   ├── feature_arsc.h
│           │               │   └── res/
│           │               │       └── values/
│           │               │           └── values.xml
│           │               ├── lib/
│           │               │   ├── AndroidManifest.xml
│           │               │   ├── R.h
│           │               │   ├── lib_arsc.h
│           │               │   └── res/
│           │               │       └── values/
│           │               │           └── values.xml
│           │               ├── overlay/
│           │               │   ├── AndroidManifest.xml
│           │               │   ├── overlay_arsc.h
│           │               │   └── res/
│           │               │       └── values/
│           │               │           └── values.xml
│           │               └── system/
│           │                   ├── AndroidManifest.xml
│           │                   ├── R.h
│           │                   ├── res/
│           │                   │   └── values/
│           │                   │       └── themes.xml
│           │                   └── system_arsc.h
│           └── tools/
│               └── aapt/
│                   ├── AaptAssets.cpp
│                   ├── AaptAssets.h
│                   ├── AaptConfig.cpp
│                   ├── AaptConfig.h
│                   ├── AaptUtil.cpp
│                   ├── AaptUtil.h
│                   ├── AaptXml.cpp
│                   ├── AaptXml.h
│                   ├── Android.mk
│                   ├── ApkBuilder.cpp
│                   ├── ApkBuilder.h
│                   ├── Bundle.h
│                   ├── CacheUpdater.h
│                   ├── Command.cpp
│                   ├── ConfigDescription.h
│                   ├── CrunchCache.cpp
│                   ├── CrunchCache.h
│                   ├── DirectoryWalker.h
│                   ├── FileFinder.cpp
│                   ├── FileFinder.h
│                   ├── Images.cpp
│                   ├── Images.h
│                   ├── IndentPrinter.h
│                   ├── Main.cpp
│                   ├── Main.h
│                   ├── NOTICE
│                   ├── OutputSet.h
│                   ├── Package.cpp
│                   ├── Resource.cpp
│                   ├── ResourceFilter.cpp
│                   ├── ResourceFilter.h
│                   ├── ResourceIdCache.cpp
│                   ├── ResourceIdCache.h
│                   ├── ResourceTable.cpp
│                   ├── ResourceTable.h
│                   ├── SourcePos.cpp
│                   ├── SourcePos.h
│                   ├── StringPool.cpp
│                   ├── StringPool.h
│                   ├── WorkQueue.cpp
│                   ├── WorkQueue.h
│                   ├── XMLNode.cpp
│                   ├── XMLNode.h
│                   ├── ZipEntry.cpp
│                   ├── ZipEntry.h
│                   ├── ZipFile.cpp
│                   ├── ZipFile.h
│                   ├── printapk.cpp
│                   ├── pseudolocalize.cpp
│                   ├── pseudolocalize.h
│                   ├── qsort_r_compat.c
│                   ├── qsort_r_compat.h
│                   └── tests/
│                       ├── AaptConfig_test.cpp
│                       ├── AaptGroupEntry_test.cpp
│                       ├── CrunchCache_test.cpp
│                       ├── FileFinder_test.cpp
│                       ├── MockCacheUpdater.h
│                       ├── MockDirectoryWalker.h
│                       ├── MockFileFinder.h
│                       ├── ResourceFilter_test.cpp
│                       ├── TestHelper.h
│                       └── plurals/
│                           ├── AndroidManifest.xml
│                           ├── res/
│                           │   └── values/
│                           │       └── strings.xml
│                           └── run.sh
├── atlas-core/
│   ├── .gitignore
│   ├── README.md
│   ├── README.zh_cn.md
│   ├── build.gradle
│   ├── gradle/
│   │   └── wrapper/
│   │       ├── gradle-wrapper.jar
│   │       └── gradle-wrapper.properties
│   ├── gradlew
│   ├── gradlew.bat
│   ├── lint.xml
│   ├── proguard.cfg
│   ├── project.properties
│   ├── publish.sh
│   ├── settings.gradle
│   └── src/
│       └── main/
│           ├── AndroidManifest.xml
│           ├── aidl/
│           │   └── android/
│           │       ├── app/
│           │       │   ├── IActivityManager/
│           │       │   │   └── ContentProviderHolder.aidl
│           │       │   └── IServiceConnection.aidl
│           │       └── taobao/
│           │           └── atlas/
│           │               └── runtime/
│           │                   ├── ApplicationInitException.java
│           │                   └── newcomponent/
│           │                       └── service/
│           │                           └── IDelegateBinder.aidl
│           ├── java/
│           │   ├── android/
│           │   │   ├── support/
│           │   │   │   └── multidex/
│           │   │   │       ├── DexElementsMaker.java
│           │   │   │       ├── DexElementsMethodInvokerV14.java
│           │   │   │       ├── DexElementsMethodInvokerV19.java
│           │   │   │       ├── IDexElementsMaker.java
│           │   │   │       ├── IDexElementsMethodInvoker.java
│           │   │   │       ├── MultiDex.java
│           │   │   │       ├── MultiDexExtractor.java
│           │   │   │       └── ZipUtil.java
│           │   │   └── taobao/
│           │   │       └── atlas/
│           │   │           ├── bridge/
│           │   │           │   └── BridgeApplicationDelegate.java
│           │   │           ├── bundleInfo/
│           │   │           │   ├── AtlasBundleInfoGenerator.java
│           │   │           │   ├── AtlasBundleInfoManager.java
│           │   │           │   ├── BundleListing.java
│           │   │           │   └── BundleListingUtil.java
│           │   │           ├── framework/
│           │   │           │   ├── Atlas.java
│           │   │           │   ├── Framework.java
│           │   │           │   └── FrameworkProperties.java
│           │   │           ├── hack/
│           │   │           │   ├── AndroidHack.java
│           │   │           │   ├── AssertionArrayException.java
│           │   │           │   ├── AtlasHacks.java
│           │   │           │   ├── Hack.java
│           │   │           │   └── Interception.java
│           │   │           ├── profile/
│           │   │           │   └── AtlasProfile.java
│           │   │           ├── runtime/
│           │   │           │   ├── ActivityLifeCycleObserver.java
│           │   │           │   ├── ActivityTaskMgr.java
│           │   │           │   ├── ApplicationInvoker.java
│           │   │           │   ├── AtlasPreLauncher.java
│           │   │           │   ├── BundleIniter.java
│           │   │           │   ├── FrameworkLifecycleHandler.java
│           │   │           │   ├── LowDiskException.java
│           │   │           │   └── RuntimeVariables.java
│           │   │           ├── startup/
│           │   │           │   ├── AtlasBridgeApplication.java
│           │   │           │   ├── DexFileCompat.java
│           │   │           │   ├── KernalVersionManager.java
│           │   │           │   ├── NClassLoader.java
│           │   │           │   └── patch/
│           │   │           │       ├── CombineDexMerger.java
│           │   │           │       ├── CombineDexVerifier.java
│           │   │           │       ├── KernalBundle.java
│           │   │           │       ├── KernalBundleArchive.java
│           │   │           │       ├── KernalConstants.java
│           │   │           │       ├── KernalFileLock.java
│           │   │           │       ├── PatchMerger.java
│           │   │           │       ├── PatchVerifier.java
│           │   │           │       └── releaser/
│           │   │           │           ├── BundleReleaser.java
│           │   │           │           ├── DexReleaser.java
│           │   │           │           ├── PatchDexProfile.java
│           │   │           │           └── ReleaseType.java
│           │   │           ├── util/
│           │   │           │   ├── ApkUtils.java
│           │   │           │   ├── AtlasFileLock.java
│           │   │           │   ├── BundleLock.java
│           │   │           │   ├── FileUtils.java
│           │   │           │   ├── IOUtil.java
│           │   │           │   ├── RefectUtils.java
│           │   │           │   ├── SoLoader.java
│           │   │           │   ├── StringUtils.java
│           │   │           │   ├── WrapperUtil.java
│           │   │           │   └── log/
│           │   │           │       ├── IAlarmer.java
│           │   │           │       ├── ILog.java
│           │   │           │       ├── IMonitor.java
│           │   │           │       └── impl/
│           │   │           │           ├── AtlasAlarmer.java
│           │   │           │           ├── AtlasLog.java
│           │   │           │           └── AtlasMonitor.java
│           │   │           └── versionInfo/
│           │   │               └── BaselineInfoManager.java
│           │   └── org/
│           │       └── osgi/
│           │           └── framework/
│           │               ├── Bundle.java
│           │               ├── BundleEvent.java
│           │               ├── BundleException.java
│           │               ├── BundleListener.java
│           │               ├── Constants.java
│           │               ├── FrameworkEvent.java
│           │               ├── FrameworkListener.java
│           │               └── SynchronousBundleListener.java
│           └── res/
│               ├── drawable/
│               │   └── atlas_waitview.xml
│               ├── layout/
│               │   └── atlas_progress.xml
│               └── values/
│                   └── style_atlas.xml
├── atlas-demo/
│   ├── .gitignore
│   ├── AtlasDemo/
│   │   ├── .gitignore
│   │   ├── AwoForBundle.txt
│   │   ├── AwoForHost.txt
│   │   ├── README.md
│   │   ├── Tpatch.txt
│   │   ├── activitygroupcompat/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── taobao/
│   │   │           │           └── android/
│   │   │           │               ├── ActivityGroupDelegate.java
│   │   │           │               └── LocalActivityManager.java
│   │   │           └── res/
│   │   │               └── values/
│   │   │                   └── strings.xml
│   │   ├── app/
│   │   │   ├── .gitignore
│   │   │   ├── .gradletasknamecache
│   │   │   ├── build.gradle
│   │   │   ├── dexPatchWraper.gradle
│   │   │   ├── jd-gui.cfg
│   │   │   ├── proguard-rules.pro
│   │   │   ├── push_dexpatch_out.sh
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── demo/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── taobao/
│   │   │           │           ├── demo/
│   │   │           │           │   ├── DemoApplication.java
│   │   │           │           │   ├── DemoPreLaunch.java
│   │   │           │           │   ├── MainActivity.java
│   │   │           │           │   ├── MyContentProvider.java
│   │   │           │           │   ├── RemoteDemoActivity.java
│   │   │           │           │   ├── UpdateDemoActivity.java
│   │   │           │           │   └── databind/
│   │   │           │           │       ├── DataBundleAarActivity.java
│   │   │           │           │       └── User.java
│   │   │           │           └── update/
│   │   │           │               └── Updater.java
│   │   │           └── res/
│   │   │               ├── drawable/
│   │   │               │   ├── ic_dashboard_black_24dp.xml
│   │   │               │   ├── ic_home_black_24dp.xml
│   │   │               │   ├── ic_notifications_black_24dp.xml
│   │   │               │   └── side_nav_bar.xml
│   │   │               ├── layout/
│   │   │               │   ├── aar_databind_main.xml
│   │   │               │   ├── activity_main.xml
│   │   │               │   ├── activity_navigation.xml
│   │   │               │   ├── activity_scrolling.xml
│   │   │               │   ├── activity_update.xml
│   │   │               │   ├── app_bar_main.xml
│   │   │               │   ├── content_main.xml
│   │   │               │   ├── content_navigation_main.xml
│   │   │               │   ├── content_scrolling.xml
│   │   │               │   ├── guild_remote_bundle.xml
│   │   │               │   └── nav_header_main.xml
│   │   │               ├── menu/
│   │   │               │   ├── activity_main_drawer.xml
│   │   │               │   ├── main.xml
│   │   │               │   └── navigation.xml
│   │   │               └── values/
│   │   │                   ├── colors.xml
│   │   │                   ├── dimens.xml
│   │   │                   ├── main_style.xml
│   │   │                   └── strings.xml
│   │   ├── build.gradle
│   │   ├── databindbundle/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── taobao/
│   │   │           │           └── databindbundle/
│   │   │           │               └── databind/
│   │   │           │                   ├── DataBundleSampleActivity.java
│   │   │           │                   └── User.java
│   │   │           └── res/
│   │   │               ├── layout/
│   │   │               │   └── bundle_databind_main.xml
│   │   │               └── values/
│   │   │                   └── strings.xml
│   │   ├── databindinglibrary/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── taobao/
│   │   │           │           └── databinding/
│   │   │           │               └── library/
│   │   │           │                   ├── DataBingAarActivity.java
│   │   │           │                   └── User.java
│   │   │           └── res/
│   │   │               └── layout/
│   │   │                   └── aar_databind.xml
│   │   ├── firstbundle/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── taobao/
│   │   │           │           └── firstbundle/
│   │   │           │               ├── FirstBundleActivity.java
│   │   │           │               ├── FirstBundleService.java
│   │   │           │               ├── UseremoteActivity.java
│   │   │           │               └── fragment/
│   │   │           │                   ├── BlankFragment.java
│   │   │           │                   ├── DummyContent.java
│   │   │           │                   ├── ItemFragment.java
│   │   │           │                   └── MyItemRecyclerViewAdapter.java
│   │   │           └── res/
│   │   │               ├── layout/
│   │   │               │   ├── activity_firstbundle.xml
│   │   │               │   ├── activity_useremote.xml
│   │   │               │   ├── activity_web_view.xml
│   │   │               │   ├── fragment_blank.xml
│   │   │               │   ├── fragment_item.xml
│   │   │               │   └── fragment_item_list.xml
│   │   │               └── values/
│   │   │                   └── strings.xml
│   │   ├── gradle/
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   ├── gradle.properties
│   │   ├── gradlew
│   │   ├── gradlew.bat
│   │   ├── lottie/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── gradle.properties
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── airbnb/
│   │   │           │           └── lottie/
│   │   │           │               ├── AnimatableColorValue.java
│   │   │           │               ├── AnimatableFloatValue.java
│   │   │           │               ├── AnimatableIntegerValue.java
│   │   │           │               ├── AnimatablePathValue.java
│   │   │           │               ├── AnimatablePointValue.java
│   │   │           │               ├── AnimatableScaleValue.java
│   │   │           │               ├── AnimatableShapeValue.java
│   │   │           │               ├── AnimatableSplitDimensionPathValue.java
│   │   │           │               ├── AnimatableTransform.java
│   │   │           │               ├── AnimatableValue.java
│   │   │           │               ├── AnimatableValueParser.java
│   │   │           │               ├── BaseAnimatableValue.java
│   │   │           │               ├── BaseKeyframeAnimation.java
│   │   │           │               ├── BaseLayer.java
│   │   │           │               ├── BitmapCanvas.java
│   │   │           │               ├── Cancellable.java
│   │   │           │               ├── CanvasPool.java
│   │   │           │               ├── CircleShape.java
│   │   │           │               ├── ColorFactory.java
│   │   │           │               ├── ColorKeyframeAnimation.java
│   │   │           │               ├── CompositionLayer.java
│   │   │           │               ├── CompositionLoader.java
│   │   │           │               ├── Content.java
│   │   │           │               ├── ContentGroup.java
│   │   │           │               ├── CubicCurveData.java
│   │   │           │               ├── DrawingContent.java
│   │   │           │               ├── EllipseContent.java
│   │   │           │               ├── FileCompositionLoader.java
│   │   │           │               ├── FillContent.java
│   │   │           │               ├── FloatKeyframeAnimation.java
│   │   │           │               ├── GammaEvaluator.java
│   │   │           │               ├── ImageAssetBitmapManager.java
│   │   │           │               ├── ImageAssetDelegate.java
│   │   │           │               ├── ImageLayer.java
│   │   │           │               ├── IntegerKeyframeAnimation.java
│   │   │           │               ├── JsonCompositionLoader.java
│   │   │           │               ├── JsonUtils.java
│   │   │           │               ├── Keyframe.java
│   │   │           │               ├── KeyframeAnimation.java
│   │   │           │               ├── L.java
│   │   │           │               ├── Layer.java
│   │   │           │               ├── LottieAnimationView.java
│   │   │           │               ├── LottieComposition.java
│   │   │           │               ├── LottieDrawable.java
│   │   │           │               ├── LottieImageAsset.java
│   │   │           │               ├── Mask.java
│   │   │           │               ├── MaskKeyframeAnimation.java
│   │   │           │               ├── MergePaths.java
│   │   │           │               ├── MergePathsContent.java
│   │   │           │               ├── MiscUtils.java
│   │   │           │               ├── ModifierContent.java
│   │   │           │               ├── NullLayer.java
│   │   │           │               ├── OnCompositionLoadedListener.java
│   │   │           │               ├── PathContent.java
│   │   │           │               ├── PathKeyframe.java
│   │   │           │               ├── PathKeyframeAnimation.java
│   │   │           │               ├── PointFFactory.java
│   │   │           │               ├── PointKeyframeAnimation.java
│   │   │           │               ├── PolystarContent.java
│   │   │           │               ├── PolystarShape.java
│   │   │           │               ├── RectangleContent.java
│   │   │           │               ├── RectangleShape.java
│   │   │           │               ├── ScaleKeyframeAnimation.java
│   │   │           │               ├── ScaleXY.java
│   │   │           │               ├── ShapeContent.java
│   │   │           │               ├── ShapeData.java
│   │   │           │               ├── ShapeFill.java
│   │   │           │               ├── ShapeGroup.java
│   │   │           │               ├── ShapeKeyframeAnimation.java
│   │   │           │               ├── ShapeLayer.java
│   │   │           │               ├── ShapePath.java
│   │   │           │               ├── ShapeStroke.java
│   │   │           │               ├── ShapeTrimPath.java
│   │   │           │               ├── SolidLayer.java
│   │   │           │               ├── SplitDimensionPathKeyframeAnimation.java
│   │   │           │               ├── StaticKeyframeAnimation.java
│   │   │           │               ├── StrokeContent.java
│   │   │           │               ├── TransformKeyframeAnimation.java
│   │   │           │               ├── TrimPathContent.java
│   │   │           │               └── Utils.java
│   │   │           └── res/
│   │   │               └── values/
│   │   │                   ├── attrs.xml
│   │   │                   └── ids.xml
│   │   ├── middlewarelibrary/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── middleware/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       ├── middleware/
│   │   │       │   │       │   └── dialog/
│   │   │       │   │       │       ├── Button.java
│   │   │       │   │       │       ├── ButtonFlat.java
│   │   │       │   │       │       ├── CustomView.java
│   │   │       │   │       │       ├── Dialog.java
│   │   │       │   │       │       └── Utils.java
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── middleware/
│   │   │       │   │               ├── ICaculator.java
│   │   │       │   │               ├── ItemDetailActivity.java
│   │   │       │   │               ├── ItemDetailFragment.java
│   │   │       │   │               ├── ItemListActivity.java
│   │   │       │   │               ├── StringUtil.java
│   │   │       │   │               └── dummy/
│   │   │       │   │                   └── DummyContent.java
│   │   │       │   └── res/
│   │   │       │       ├── anim/
│   │   │       │       │   ├── dialog_main_hide_amination.xml
│   │   │       │       │   ├── dialog_main_show_amination.xml
│   │   │       │       │   ├── dialog_root_hide_amin.xml
│   │   │       │       │   └── dialog_root_show_amin.xml
│   │   │       │       ├── drawable/
│   │   │       │       │   └── background_transparent.xml
│   │   │       │       ├── layout/
│   │   │       │       │   ├── activity_item_detail.xml
│   │   │       │       │   ├── activity_item_list.xml
│   │   │       │       │   ├── item_detail.xml
│   │   │       │       │   ├── item_list.xml
│   │   │       │       │   ├── item_list_content.xml
│   │   │       │       │   └── update_dialog.xml
│   │   │       │       ├── layout-w900dp/
│   │   │       │       │   └── item_list.xml
│   │   │       │       └── values/
│   │   │       │           ├── colors.xml
│   │   │       │           ├── dimens.xml
│   │   │       │           ├── strings.xml
│   │   │       │           └── styles.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── middleware/
│   │   │                           └── ExampleUnitTest.java
│   │   ├── publicbundle/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── publicBundle/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── publicBundle/
│   │   │       │   │               └── Tools.java
│   │   │       │   └── res/
│   │   │       │       └── values/
│   │   │       │           └── strings.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── publicBundle/
│   │   │                           └── ExampleUnitTest.java
│   │   ├── remotebundle/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── remotebunle/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── remotebunle/
│   │   │       │   │               └── RemoteBundleActivity.java
│   │   │       │   └── res/
│   │   │       │       ├── layout/
│   │   │       │       │   └── activity_remote_bundle.xml
│   │   │       │       └── values/
│   │   │       │           └── strings.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── remotebunle/
│   │   │                           └── ExampleUnitTest.java
│   │   ├── secondbundle/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── secondbundle/
│   │   │       │   │               ├── MyRichView.java
│   │   │       │   │               ├── PlusOneFragment.java
│   │   │       │   │               ├── SecondBundleActivity.java
│   │   │       │   │               ├── SecondBundleApplication.java
│   │   │       │   │               ├── SecondBundleFragment.java
│   │   │       │   │               └── SecondBundleIniter.java
│   │   │       │   └── res/
│   │   │       │       ├── layout/
│   │   │       │       │   ├── activity_secondbundle.xml
│   │   │       │       │   ├── fragment_plus_one.xml
│   │   │       │       │   └── test_layout.xml
│   │   │       │       └── values/
│   │   │       │           └── strings.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── secondbundle/
│   │   │                           └── ExampleUnitTest.java
│   │   ├── secondbundlelibrary/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── secondbundlelibrary/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── secondbundlelibrary/
│   │   │       │   │               └── SecondbundleShareActivity.java
│   │   │       │   └── res/
│   │   │       │       ├── layout/
│   │   │       │       │   └── activity_secondbundle_share.xml
│   │   │       │       └── values/
│   │   │       │           └── strings.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── secondbundlelibrary/
│   │   │                           └── ExampleUnitTest.java
│   │   ├── settings.gradle
│   │   ├── splashscreen/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── splashscreen/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── assets/
│   │   │       │   │   ├── A.json
│   │   │       │   │   ├── L.json
│   │   │       │   │   ├── S.json
│   │   │       │   │   └── T.json
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       ├── airbnb/
│   │   │       │   │       │   └── lottiesplash/
│   │   │       │   │       │       └── LottieFontViewGroup.java
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── splashscreen/
│   │   │       │   │               └── WelcomeActivity.java
│   │   │       │   └── res/
│   │   │       │       ├── layout/
│   │   │       │       │   └── activity_welcome.xml
│   │   │       │       └── values/
│   │   │       │           ├── attrs.xml
│   │   │       │           ├── colors.xml
│   │   │       │           ├── strings.xml
│   │   │       │           └── styles.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── splashscreen/
│   │   │                           └── ExampleUnitTest.java
│   │   └── structor.md
│   ├── IncrementAtlasDemo/
│   │   ├── .gitignore
│   │   ├── build.gradle
│   │   ├── gradle/
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   ├── gradle.properties
│   │   ├── gradlew
│   │   ├── gradlew.bat
│   │   ├── increment_app/
│   │   │   ├── build.gradle
│   │   │   └── src/
│   │   │       └── main/
│   │   │           └── AndroidManifest.xml
│   │   └── settings.gradle
│   ├── MyApplication/
│   │   ├── gradle/
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   └── gradlew
│   ├── README.md
│   ├── multi-feature-module/
│   │   ├── .google/
│   │   │   └── packaging.yaml
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── README.md
│   │   ├── base/
│   │   │   ├── build.gradle
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── example/
│   │   │           │           └── android/
│   │   │           │               └── unsplash/
│   │   │           │                   ├── IntentUtil.kt
│   │   │           │                   ├── data/
│   │   │           │                   │   ├── PhotoService.java
│   │   │           │                   │   ├── UnsplashService.java
│   │   │           │                   │   └── model/
│   │   │           │                   │       └── Photo.java
│   │   │           │                   ├── test.kt
│   │   │           │                   ├── transition/
│   │   │           │                   │   └── TextResize.java
│   │   │           │                   └── ui/
│   │   │           │                       ├── DetailSharedElementEnterCallback.java
│   │   │           │                       ├── ForegroundImageView.java
│   │   │           │                       ├── ImageSize.java
│   │   │           │                       ├── ThreeTwoImageView.java
│   │   │           │                       ├── TransitionCallback.java
│   │   │           │                       ├── grid/
│   │   │           │                       │   ├── GridMarginDecoration.java
│   │   │           │                       │   ├── OnItemSelectedListener.java
│   │   │           │                       │   ├── PhotoAdapter.java
│   │   │           │                       │   └── PhotoViewHolder.java
│   │   │           │                       └── pager/
│   │   │           │                           └── DetailViewPagerAdapter.java
│   │   │           └── res/
│   │   │               ├── animator/
│   │   │               │   └── raise.xml
│   │   │               ├── drawable/
│   │   │               │   ├── grey_ripple.xml
│   │   │               │   └── ic_arrow_back.xml
│   │   │               ├── layout/
│   │   │               │   ├── detail_view.xml
│   │   │               │   └── photo_item.xml
│   │   │               ├── transition/
│   │   │               │   ├── grid_exit.xml
│   │   │               │   ├── grid_reenter.xml
│   │   │               │   └── shared_main_detail.xml
│   │   │               └── values/
│   │   │                   ├── attrs_foreground_view.xml
│   │   │                   ├── colors.xml
│   │   │                   ├── dimens.xml
│   │   │                   ├── ids.xml
│   │   │                   ├── strings.xml
│   │   │                   └── styles.xml
│   │   ├── build.gradle
│   │   ├── detail/
│   │   │   ├── build.gradle
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── example/
│   │   │       │               └── android/
│   │   │       │                   └── unsplash/
│   │   │       │                       └── DetailActivityTest.java
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── example/
│   │   │           │           └── android/
│   │   │           │               └── unsplash/
│   │   │           │                   └── DetailActivity.java
│   │   │           └── res/
│   │   │               ├── drawable/
│   │   │               │   └── page_margin.xml
│   │   │               └── layout/
│   │   │                   └── activity_detail.xml
│   │   ├── gradle/
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   ├── gradle.properties
│   │   ├── gradlew
│   │   ├── installed/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   └── src/
│   │   │       └── main/
│   │   │           └── AndroidManifest.xml
│   │   ├── instant/
│   │   │   └── build.gradle
│   │   ├── main/
│   │   │   ├── build.gradle
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── example/
│   │   │       │               └── android/
│   │   │       │                   └── unsplash/
│   │   │       │                       └── MainActivityTest.java
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── example/
│   │   │           │           └── android/
│   │   │           │               └── unsplash/
│   │   │           │                   └── MainActivity.java
│   │   │           └── res/
│   │   │               └── layout/
│   │   │                   └── activity_main.xml
│   │   ├── proguard.pro
│   │   └── settings.gradle
│   └── 基于版本打包的demo/
│       ├── FirstBundle/
│       │   ├── build.gradle
│       │   ├── gradle/
│       │   │   └── wrapper/
│       │   │       ├── gradle-wrapper.jar
│       │   │       └── gradle-wrapper.properties
│       │   ├── gradlew
│       │   ├── gradlew.bat
│       │   └── src/
│       │       └── main/
│       │           ├── AndroidManifest.xml
│       │           ├── java/
│       │           │   └── com/
│       │           │       └── taobao/
│       │           │           └── firstbundle/
│       │           │               ├── FirstBundleActivity.java
│       │           │               └── FirstBundleApplication.java
│       │           └── res/
│       │               ├── layout/
│       │               │   └── first_main.xml
│       │               └── values/
│       │                   └── strings.xml
│       ├── README.md
│       ├── README.zh_cn.md
│       ├── app/
│       │   ├── activitygroupdelegate/
│       │   │   ├── .gitignore
│       │   │   ├── build.gradle
│       │   │   ├── proguard-rules.pro
│       │   │   └── src/
│       │   │       ├── androidTest/
│       │   │       │   └── java/
│       │   │       │       └── com/
│       │   │       │           └── taoboa/
│       │   │       │               └── activitygroupdelegate/
│       │   │       │                   └── ExampleInstrumentedTest.java
│       │   │       ├── main/
│       │   │       │   ├── AndroidManifest.xml
│       │   │       │   └── res/
│       │   │       │       └── values/
│       │   │       │           └── strings.xml
│       │   │       └── test/
│       │   │           └── java/
│       │   │               └── com/
│       │   │                   └── taoboa/
│       │   │                       └── activitygroupdelegate/
│       │   │                           └── ExampleUnitTest.java
│       │   ├── build.gradle
│       │   ├── buildApk.sh
│       │   ├── buildTpatch.sh
│       │   ├── firstbundle/
│       │   │   ├── .gitignore
│       │   │   ├── build.gradle
│       │   │   ├── proguard-rules.pro
│       │   │   └── src/
│       │   │       ├── androidTest/
│       │   │       │   └── java/
│       │   │       │       └── com/
│       │   │       │           └── taobao/
│       │   │       │               └── firstbundle/
│       │   │       │                   └── ExampleInstrumentedTest.java
│       │   │       ├── main/
│       │   │       │   ├── AndroidManifest.xml
│       │   │       │   ├── java/
│       │   │       │   │   └── com/
│       │   │       │   │       └── taobao/
│       │   │       │   │           └── firstbundle/
│       │   │       │   │               └── MainActivity.java
│       │   │       │   └── res/
│       │   │       │       ├── drawable/
│       │   │       │       │   ├── ic_dashboard_black_24dp.xml
│       │   │       │       │   ├── ic_home_black_24dp.xml
│       │   │       │       │   └── ic_notifications_black_24dp.xml
│       │   │       │       ├── layout/
│       │   │       │       │   └── activity_main.xml
│       │   │       │       ├── menu/
│       │   │       │       │   └── navigation.xml
│       │   │       │       └── values/
│       │   │       │           ├── colors.xml
│       │   │       │           ├── dimens.xml
│       │   │       │           ├── strings.xml
│       │   │       │           └── styles.xml
│       │   │       └── test/
│       │   │           └── java/
│       │   │               └── com/
│       │   │                   └── taobao/
│       │   │                       └── firstbundle/
│       │   │                           └── ExampleUnitTest.java
│       │   ├── gradle/
│       │   │   └── wrapper/
│       │   │       ├── gradle-wrapper.jar
│       │   │       └── gradle-wrapper.properties
│       │   ├── gradle.properties
│       │   ├── gradlew
│       │   ├── gradlew.bat
│       │   ├── proguard.cfg
│       │   ├── secondbundle/
│       │   │   ├── .gitignore
│       │   │   ├── build.gradle
│       │   │   ├── proguard-rules.pro
│       │   │   └── src/
│       │   │       ├── androidTest/
│       │   │       │   └── java/
│       │   │       │       └── com/
│       │   │       │           └── taobao/
│       │   │       │               └── secondbundle/
│       │   │       │                   └── ExampleInstrumentedTest.java
│       │   │       ├── main/
│       │   │       │   ├── AndroidManifest.xml
│       │   │       │   ├── java/
│       │   │       │   │   └── com/
│       │   │       │   │       └── taobao/
│       │   │       │   │           └── secondbundle/
│       │   │       │   │               └── LoginActivity.java
│       │   │       │   └── res/
│       │   │       │       ├── layout/
│       │   │       │       │   └── activity_login.xml
│       │   │       │       └── values/
│       │   │       │           ├── colors.xml
│       │   │       │           ├── dimens.xml
│       │   │       │           ├── strings.xml
│       │   │       │           └── styles.xml
│       │   │       └── test/
│       │   │           └── java/
│       │   │               └── com/
│       │   │                   └── taobao/
│       │   │                       └── secondbundle/
│       │   │                           └── ExampleUnitTest.java
│       │   ├── settings.gradle
│       │   ├── sharebundle/
│       │   │   ├── .gitignore
│       │   │   ├── build.gradle
│       │   │   ├── proguard-rules.pro
│       │   │   └── src/
│       │   │       ├── androidTest/
│       │   │       │   └── java/
│       │   │       │       └── com/
│       │   │       │           └── taobao/
│       │   │       │               └── sharebundle/
│       │   │       │                   └── ExampleInstrumentedTest.java
│       │   │       ├── main/
│       │   │       │   ├── AndroidManifest.xml
│       │   │       │   └── res/
│       │   │       │       └── values/
│       │   │       │           └── strings.xml
│       │   │       └── test/
│       │   │           └── java/
│       │   │               └── com/
│       │   │                   └── taobao/
│       │   │                       └── sharebundle/
│       │   │                           └── ExampleUnitTest.java
│       │   ├── sharedlibrary/
│       │   │   ├── .gitignore
│       │   │   ├── build.gradle
│       │   │   ├── proguard-rules.pro
│       │   │   └── src/
│       │   │       ├── androidTest/
│       │   │       │   └── java/
│       │   │       │       └── taobao/
│       │   │       │           └── sharedlibrary/
│       │   │       │               └── ExampleInstrumentedTest.java
│       │   │       ├── main/
│       │   │       │   ├── AndroidManifest.xml
│       │   │       │   └── res/
│       │   │       │       └── values/
│       │   │       │           └── strings.xml
│       │   │       └── test/
│       │   │           └── java/
│       │   │               └── taobao/
│       │   │                   └── sharedlibrary/
│       │   │                       └── ExampleUnitTest.java
│       │   └── src/
│       │       └── main/
│       │           ├── AndroidManifest.xml
│       │           ├── java/
│       │           │   └── com/
│       │           │       └── taobao/
│       │           │           └── demo/
│       │           │               ├── DemoApplication.java
│       │           │               ├── WelcomActivity.java
│       │           │               └── update/
│       │           │                   └── Updater.java
│       │           └── res/
│       │               ├── layout/
│       │               │   └── main.xml
│       │               └── values/
│       │                   ├── colors.xml
│       │                   ├── strings.xml
│       │                   └── styles.xml
│       ├── build.gradle
│       ├── gradle/
│       │   └── wrapper/
│       │       ├── gradle-wrapper.jar
│       │       └── gradle-wrapper.properties
│       ├── gradlew
│       ├── gradlew.bat
│       └── settings.gradle
├── atlas-docs/
│   ├── .gitignore
│   ├── .si.yml
│   ├── README.md
│   ├── SUMMARY.md
│   ├── _book/
│   │   ├── .gitignore
│   │   ├── .si.yml
│   │   ├── code_read/
│   │   │   ├── atlas_bundle_load/
│   │   │   │   ├── atlas_bundle_load.html
│   │   │   │   ├── bundle_load.uml
│   │   │   │   └── bundle_load_part_2.uml
│   │   │   ├── atlas_gradle_apk/
│   │   │   │   └── atlas_atlas_gradle_apk.html
│   │   │   └── atlas_start/
│   │   │       ├── atlas_core_start.uml
│   │   │       ├── atlas_core_start_callback.uml
│   │   │       ├── atlas_core_start_provider.uml
│   │   │       ├── atlas_java_startup.uml
│   │   │       ├── atlas_start_1.html
│   │   │       └── atlas_start_2.html
│   │   ├── faq/
│   │   │   ├── dynamic_failed_help.html
│   │   │   ├── help.html
│   │   │   ├── question.html
│   │   │   └── variant.html
│   │   ├── gitbook/
│   │   │   ├── fonts/
│   │   │   │   └── fontawesome/
│   │   │   │       └── FontAwesome.otf
│   │   │   ├── gitbook-plugin-fontsettings/
│   │   │   │   ├── fontsettings.js
│   │   │   │   └── website.css
│   │   │   ├── gitbook-plugin-highlight/
│   │   │   │   ├── ebook.css
│   │   │   │   └── website.css
│   │   │   ├── gitbook-plugin-livereload/
│   │   │   │   └── plugin.js
│   │   │   ├── gitbook-plugin-lunr/
│   │   │   │   └── search-lunr.js
│   │   │   ├── gitbook-plugin-search/
│   │   │   │   ├── search-engine.js
│   │   │   │   ├── search.css
│   │   │   │   └── search.js
│   │   │   ├── gitbook-plugin-sharing/
│   │   │   │   └── buttons.js
│   │   │   ├── gitbook.js
│   │   │   ├── style.css
│   │   │   └── theme.js
│   │   ├── guide-for-use/
│   │   │   ├── bundleCommunicate.html
│   │   │   ├── guide_for_build.html
│   │   │   ├── guide_for_bundle.html
│   │   │   ├── guide_for_compile.html
│   │   │   └── index.html
│   │   ├── index.html
│   │   ├── principle-intro/
│   │   │   ├── Apk_architecture.html
│   │   │   ├── File_architecture_runtime.html
│   │   │   ├── Project_architectured.html
│   │   │   └── Runtime_principle.html
│   │   ├── search_index.json
│   │   └── update/
│   │       ├── dexpatch.html
│   │       ├── dexpatch_use_guide.html
│   │       ├── guide.html
│   │       ├── index.html
│   │       └── principle.html
│   ├── code_read/
│   │   ├── atlas_bundle_load/
│   │   │   ├── atlas_bundle_load.md
│   │   │   ├── bundle_load.uml
│   │   │   └── bundle_load_part_2.uml
│   │   ├── atlas_gradle_apk/
│   │   │   └── atlas_atlas_gradle_apk.md
│   │   └── atlas_start/
│   │       ├── atlas_core_start.uml
│   │       ├── atlas_core_start_callback.uml
│   │       ├── atlas_core_start_provider.uml
│   │       ├── atlas_java_startup.uml
│   │       ├── atlas_start_1.md
│   │       └── atlas_start_2.md
│   ├── faq/
│   │   ├── dynamic_failed_help.md
│   │   ├── help.md
│   │   ├── question.md
│   │   └── variant.md
│   ├── guide-for-use/
│   │   ├── README.md
│   │   ├── _book/
│   │   │   ├── bundleCommunicate.md
│   │   │   ├── gitbook/
│   │   │   │   ├── fonts/
│   │   │   │   │   └── fontawesome/
│   │   │   │   │       └── FontAwesome.otf
│   │   │   │   ├── gitbook-plugin-fontsettings/
│   │   │   │   │   ├── fontsettings.js
│   │   │   │   │   └── website.css
│   │   │   │   ├── gitbook-plugin-highlight/
│   │   │   │   │   ├── ebook.css
│   │   │   │   │   └── website.css
│   │   │   │   ├── gitbook-plugin-livereload/
│   │   │   │   │   └── plugin.js
│   │   │   │   ├── gitbook-plugin-lunr/
│   │   │   │   │   └── search-lunr.js
│   │   │   │   ├── gitbook-plugin-search/
│   │   │   │   │   ├── search-engine.js
│   │   │   │   │   ├── search.css
│   │   │   │   │   └── search.js
│   │   │   │   ├── gitbook-plugin-sharing/
│   │   │   │   │   └── buttons.js
│   │   │   │   ├── gitbook.js
│   │   │   │   ├── style.css
│   │   │   │   └── theme.js
│   │   │   ├── guide_for_build.md
│   │   │   ├── guide_for_bundle.md
│   │   │   ├── guide_for_compile.md
│   │   │   ├── index.html
│   │   │   └── search_index.json
│   │   ├── bundleCommunicate.md
│   │   ├── guide_for_build.md
│   │   ├── guide_for_bundle.md
│   │   ├── guide_for_compile.md
│   │   └── guide_for_progurad.md
│   ├── principle-intro/
│   │   ├── Apk_architecture.md
│   │   ├── File_architecture_runtime.md
│   │   ├── Project_architectured.md
│   │   └── Runtime_principle.md
│   └── update/
│       ├── README.md
│       ├── dexpatch.md
│       ├── dexpatch_use_guide.md
│       ├── guide.md
│       └── principle.md
├── atlas-gradle-plugin/
│   ├── README.md
│   ├── aapt/
│   │   ├── build.gradle
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── taobao/
│   │           │           └── android/
│   │           │               └── AaptLib.java
│   │           └── resources/
│   │               └── aapt/
│   │                   ├── linux/
│   │                   │   └── aapt
│   │                   └── mac/
│   │                       └── aapt
│   ├── atlas-plugin/
│   │   ├── .gradletasknamecache
│   │   ├── build/
│   │   │   └── resources/
│   │   │       └── main/
│   │   │           └── META-INF/
│   │   │               └── gradle-plugins/
│   │   │                   ├── com.taobao.atlas.feature.properties
│   │   │                   └── com.taobao.atlas.instantapp.properties
│   │   ├── build.gradle
│   │   ├── increment.sh
│   │   ├── libs/
│   │   │   └── libarsc.jar
│   │   ├── publish.sh
│   │   ├── src/
│   │   │   ├── main/
│   │   │   │   ├── java/
│   │   │   │   │   ├── android/
│   │   │   │   │   │   └── aapt/
│   │   │   │   │   │       └── pb/
│   │   │   │   │   │           └── internal/
│   │   │   │   │   │               └── ResourcesInternal.java
│   │   │   │   │   ├── com/
│   │   │   │   │   │   ├── android/
│   │   │   │   │   │   │   ├── aapt/
│   │   │   │   │   │   │   │   └── Resources.java
│   │   │   │   │   │   │   ├── build/
│   │   │   │   │   │   │   │   └── gradle/
│   │   │   │   │   │   │   │       ├── internal/
│   │   │   │   │   │   │   │       │   ├── AndroidComponent.java
│   │   │   │   │   │   │   │       │   ├── ApkDataUtils.java
│   │   │   │   │   │   │   │       │   ├── AtlasDependencyManager.java
│   │   │   │   │   │   │   │       │   ├── AtlasDependencyManager2.java
│   │   │   │   │   │   │   │       │   ├── api/
│   │   │   │   │   │   │   │       │   │   ├── ApContext.java
│   │   │   │   │   │   │   │       │   │   ├── ApkFiles.java
│   │   │   │   │   │   │   │       │   │   ├── AppVariantContext.java
│   │   │   │   │   │   │   │       │   │   ├── AppVariantOutputContext.java
│   │   │   │   │   │   │   │       │   │   ├── AwbTransform.java
│   │   │   │   │   │   │   │       │   │   ├── FeatureVariantContext.java
│   │   │   │   │   │   │   │       │   │   ├── LibVariantContext.java
│   │   │   │   │   │   │   │       │   │   └── VariantContext.java
│   │   │   │   │   │   │   │       │   ├── ide/
│   │   │   │   │   │   │   │       │   │   ├── AtlasAndroidLibraryImpl.java
│   │   │   │   │   │   │   │       │   │   ├── AtlasDependencyGraph.java
│   │   │   │   │   │   │   │       │   │   └── DependencyConvertUtils.java
│   │   │   │   │   │   │   │       │   ├── incremental/
│   │   │   │   │   │   │   │       │   │   ├── TBConstructorRedirection.java
│   │   │   │   │   │   │   │       │   │   ├── TBIncrementalChangeVisitor.java
│   │   │   │   │   │   │   │       │   │   ├── TBIncrementalSupportVisitor.java
│   │   │   │   │   │   │   │       │   │   ├── TBIncrementalVisitor.java
│   │   │   │   │   │   │   │       │   │   └── TBMethodRedirection.java
│   │   │   │   │   │   │   │       │   ├── pipeline/
│   │   │   │   │   │   │   │       │   │   ├── AtlasExtendedContentType.java
│   │   │   │   │   │   │   │       │   │   ├── AtlasIncrementalFileMergeTransformUtils.java
│   │   │   │   │   │   │   │       │   │   ├── AtlasIntermediateFolderUtils.java
│   │   │   │   │   │   │   │       │   │   ├── AtlasIntermediateStreamHelper.java
│   │   │   │   │   │   │   │       │   │   ├── InjectTransform.java
│   │   │   │   │   │   │   │       │   │   └── InjectTransformManager.java
│   │   │   │   │   │   │   │       │   ├── publishing/
│   │   │   │   │   │   │   │       │   │   └── AtlasAndroidArtifacts.java
│   │   │   │   │   │   │   │       │   ├── scope/
│   │   │   │   │   │   │   │       │   │   └── ConventionMappingHelper.java
│   │   │   │   │   │   │   │       │   └── transforms/
│   │   │   │   │   │   │   │       │       ├── ApTransform.java
│   │   │   │   │   │   │   │       │       ├── ExtractApTransform.java
│   │   │   │   │   │   │   │       │       ├── ExtractAwbTransform.java
│   │   │   │   │   │   │   │       │       ├── ExtractSolibTransform.java
│   │   │   │   │   │   │   │       │       ├── LoadSolibFromLibsTransform.java
│   │   │   │   │   │   │   │       │       └── LoadSolibTransform.java
│   │   │   │   │   │   │   │       └── tasks/
│   │   │   │   │   │   │   │           ├── PackageAwb.java
│   │   │   │   │   │   │   │           └── factory/
│   │   │   │   │   │   │   │               └── AwbAndroidJavaCompile.java
│   │   │   │   │   │   │   ├── builder/
│   │   │   │   │   │   │   │   └── core/
│   │   │   │   │   │   │   │       ├── AtlasAapt.java
│   │   │   │   │   │   │   │       └── AtlasBuilder.java
│   │   │   │   │   │   │   ├── ide/
│   │   │   │   │   │   │   │   └── common/
│   │   │   │   │   │   │   │       └── process/
│   │   │   │   │   │   │   │           ├── CmdExecutor.java
│   │   │   │   │   │   │   │           ├── MtlProcessExecutor.java
│   │   │   │   │   │   │   │           ├── MtlProcessInfo.java
│   │   │   │   │   │   │   │           └── MtlProcessInfoBuilder.java
│   │   │   │   │   │   │   └── tools/
│   │   │   │   │   │   │       └── r8/
│   │   │   │   │   │   │           ├── AtlasD8.java
│   │   │   │   │   │   │           ├── AtlasD8DexArchiveBuilder.java
│   │   │   │   │   │   │           ├── AtlasD8Merger.java
│   │   │   │   │   │   │           └── dex/
│   │   │   │   │   │   │               ├── AtlasApplicationWriter.java
│   │   │   │   │   │   │               └── AtlasVirtualFile.java
│   │   │   │   │   │   └── taobao/
│   │   │   │   │   │       └── android/
│   │   │   │   │   │           └── builder/
│   │   │   │   │   │               ├── AtlasAppPlugin.java
│   │   │   │   │   │               ├── AtlasBasePlugin.java
│   │   │   │   │   │               ├── AtlasBuildContext.java
│   │   │   │   │   │               ├── AtlasFeaturePlugin.java
│   │   │   │   │   │               ├── AtlasInstantAppPlugin.java
│   │   │   │   │   │               ├── AtlasLibPlugin.java
│   │   │   │   │   │               ├── AtlasMainDexHelper.java
│   │   │   │   │   │               ├── AtlasPlugin.java
│   │   │   │   │   │               ├── adapter/
│   │   │   │   │   │               │   ├── AppVariantContextFactory.java
│   │   │   │   │   │               │   ├── AtlasExtensionFactory.java
│   │   │   │   │   │               │   └── BuilderAdapter.java
│   │   │   │   │   │               ├── dependency/
│   │   │   │   │   │               │   ├── AtlasDependencyTree.java
│   │   │   │   │   │               │   ├── AtlasProjectDependencyManager.java
│   │   │   │   │   │               │   ├── ap/
│   │   │   │   │   │               │   │   └── ApDependency.java
│   │   │   │   │   │               │   ├── diff/
│   │   │   │   │   │               │   │   ├── DependencyCompareUtils.java
│   │   │   │   │   │               │   │   └── DependencyDiff.java
│   │   │   │   │   │               │   ├── model/
│   │   │   │   │   │               │   │   ├── ApLibrary.java
│   │   │   │   │   │               │   │   ├── ApkLibrary.java
│   │   │   │   │   │               │   │   ├── AwbBundle.java
│   │   │   │   │   │               │   │   └── SoLibrary.java
│   │   │   │   │   │               │   ├── output/
│   │   │   │   │   │               │   │   └── DependencyJson.java
│   │   │   │   │   │               │   └── parser/
│   │   │   │   │   │               │       ├── AtlasDepHelper.java
│   │   │   │   │   │               │       ├── AtlasDepTreeParser.java
│   │   │   │   │   │               │       ├── CircleDependencyCheck.java
│   │   │   │   │   │               │       ├── DependencyLocationManager.java
│   │   │   │   │   │               │       ├── ResolvedDependencyInfo.java
│   │   │   │   │   │               │       └── helper/
│   │   │   │   │   │               │           ├── DependencyGroup.java
│   │   │   │   │   │               │           └── DependencyResolver.java
│   │   │   │   │   │               ├── extension/
│   │   │   │   │   │               │   ├── AtlasExtension.java
│   │   │   │   │   │               │   ├── BundleConfig.java
│   │   │   │   │   │               │   ├── DefaultChannelConfig.java
│   │   │   │   │   │               │   ├── DexConfig.java
│   │   │   │   │   │               │   ├── EnhanceConfig.java
│   │   │   │   │   │               │   ├── ManifestOptions.java
│   │   │   │   │   │               │   ├── MultiDexConfig.java
│   │   │   │   │   │               │   ├── PatchConfig.java
│   │   │   │   │   │               │   ├── TBuildConfig.java
│   │   │   │   │   │               │   ├── TBuildType.java
│   │   │   │   │   │               │   ├── annotation/
│   │   │   │   │   │               │   │   ├── Config.java
│   │   │   │   │   │               │   │   └── ConfigGroup.java
│   │   │   │   │   │               │   └── factory/
│   │   │   │   │   │               │       ├── DefaultChannelConfigFactory.java
│   │   │   │   │   │               │       ├── DexConfigFactory.java
│   │   │   │   │   │               │       ├── EnhanceConfigFactory.java
│   │   │   │   │   │               │       ├── MultiDexConfigFactory.java
│   │   │   │   │   │               │       ├── PatchConfigFactory.java
│   │   │   │   │   │               │       └── TBuildTypeFactory.java
│   │   │   │   │   │               ├── hook/
│   │   │   │   │   │               │   ├── AppPluginHook.java
│   │   │   │   │   │               │   └── dex/
│   │   │   │   │   │               │       ├── AtlasD8Creator.java
│   │   │   │   │   │               │       ├── AtlasDexArchiveMerger.java
│   │   │   │   │   │               │       ├── DexArchiveMergerHook.java
│   │   │   │   │   │               │       ├── DexByteCodeConverterHook.java
│   │   │   │   │   │               │       ├── DexWrapperHook.java
│   │   │   │   │   │               │       ├── DirDexArchiveHook.java
│   │   │   │   │   │               │       └── NonIncrementalJarDexArchiveHook.java
│   │   │   │   │   │               ├── insant/
│   │   │   │   │   │               │   ├── DelegateProguardTransform.java
│   │   │   │   │   │               │   ├── InstantInfo.java
│   │   │   │   │   │               │   ├── TaobaoExtractJarsTransform.java
│   │   │   │   │   │               │   ├── TaobaoInstantRunDependenciesApkBuilder.java
│   │   │   │   │   │               │   ├── TaobaoInstantRunDex.java
│   │   │   │   │   │               │   ├── TaobaoInstantRunSlicer.java
│   │   │   │   │   │               │   ├── TaobaoInstantRunTransform.java
│   │   │   │   │   │               │   ├── matcher/
│   │   │   │   │   │               │   │   ├── AllMatcher.java
│   │   │   │   │   │               │   │   ├── ClassMatcher.java
│   │   │   │   │   │               │   │   ├── ExcludeMatcher.java
│   │   │   │   │   │               │   │   ├── Imatcher.java
│   │   │   │   │   │               │   │   ├── ImplementsMatcher.java
│   │   │   │   │   │               │   │   ├── MatcherCreator.java
│   │   │   │   │   │               │   │   ├── NoMatcher.java
│   │   │   │   │   │               │   │   ├── PackageMatcher.java
│   │   │   │   │   │               │   │   ├── SeveralExcludeMatcher.java
│   │   │   │   │   │               │   │   └── SubPackgeMatcher.java
│   │   │   │   │   │               │   └── visitor/
│   │   │   │   │   │               │       ├── ModifyClassVisitor.java
│   │   │   │   │   │               │       ├── ModifyFieldVisitor.java
│   │   │   │   │   │               │       └── ModifyMethodVisitor.java
│   │   │   │   │   │               ├── manager/
│   │   │   │   │   │               │   ├── AtlasAppTaskManager.java
│   │   │   │   │   │               │   ├── AtlasBaseTaskManager.java
│   │   │   │   │   │               │   ├── AtlasConfigurationHelper.java
│   │   │   │   │   │               │   ├── AtlasFeatureTaskManager.java
│   │   │   │   │   │               │   ├── AtlasLibTaskManager.java
│   │   │   │   │   │               │   ├── PluginManager.java
│   │   │   │   │   │               │   └── Version.java
│   │   │   │   │   │               ├── tasks/
│   │   │   │   │   │               │   ├── PrepareAPTask.java
│   │   │   │   │   │               │   ├── app/
│   │   │   │   │   │               │   │   ├── ApBuildTask.java
│   │   │   │   │   │               │   │   ├── BuildAtlasEnvTask.java
│   │   │   │   │   │               │   │   ├── GenerateAtlasSourceTask.java
│   │   │   │   │   │               │   │   ├── LogDependenciesTask.java
│   │   │   │   │   │               │   │   ├── ResourcePatch.java
│   │   │   │   │   │               │   │   ├── ScanDupResTask.java
│   │   │   │   │   │               │   │   ├── bundle/
│   │   │   │   │   │               │   │   │   ├── AtlasSymbolIo.java
│   │   │   │   │   │               │   │   │   ├── AwbApkPackageTask.java
│   │   │   │   │   │               │   │   │   ├── AwbJavaCompileConfigAction.java
│   │   │   │   │   │               │   │   │   ├── AwbPackagingScope.java
│   │   │   │   │   │               │   │   │   ├── Dex.java
│   │   │   │   │   │               │   │   │   ├── JavacAwbsTask.java
│   │   │   │   │   │               │   │   │   ├── PackageAwbsTask.java
│   │   │   │   │   │               │   │   │   ├── ProcessAwbAndroidResources.java
│   │   │   │   │   │               │   │   │   ├── ProcessResAwbsTask.java
│   │   │   │   │   │               │   │   │   └── actions/
│   │   │   │   │   │               │   │   │       ├── FirstApkAction.java
│   │   │   │   │   │               │   │   │       ├── LastApkAction.java
│   │   │   │   │   │               │   │   │       └── LastBundleAction.java
│   │   │   │   │   │               │   │   ├── databinding/
│   │   │   │   │   │               │   │   │   ├── AwbDataBindingExportBuildInfoTask.java
│   │   │   │   │   │               │   │   │   ├── AwbDataBindingMergeArtifactsTask.java
│   │   │   │   │   │               │   │   │   ├── AwbDataBindingProcessLayoutTask.java
│   │   │   │   │   │               │   │   │   ├── AwbDataBindingRenameTask.java
│   │   │   │   │   │               │   │   │   └── AwbXmlProcessor.java
│   │   │   │   │   │               │   │   ├── manifest/
│   │   │   │   │   │               │   │   │   ├── PostProcessManifestAction.java
│   │   │   │   │   │               │   │   │   ├── PreProcessManifestAction.java
│   │   │   │   │   │               │   │   │   └── StandardizeLibManifestTask.java
│   │   │   │   │   │               │   │   ├── merge/
│   │   │   │   │   │               │   │   │   ├── AppendMainArtifactsCollection.java
│   │   │   │   │   │               │   │   │   ├── MainArtifactsCollection.java
│   │   │   │   │   │               │   │   │   ├── MainFilesCollection.java
│   │   │   │   │   │               │   │   │   ├── MergeAssetAwbsConfigAction.java
│   │   │   │   │   │               │   │   │   ├── MergeAwbsJniFolder.java
│   │   │   │   │   │               │   │   │   ├── MergeManifestAwbsConfigAction.java
│   │   │   │   │   │               │   │   │   ├── MergeResAwbsConfigAction.java
│   │   │   │   │   │               │   │   │   ├── MergeResV4Dir.java
│   │   │   │   │   │               │   │   │   ├── MergeSoLibTask.java
│   │   │   │   │   │               │   │   │   └── bundle/
│   │   │   │   │   │               │   │   │       ├── AwbDataBindingProcessLayoutsTask.java
│   │   │   │   │   │               │   │   │       ├── MergeAwbAssets.java
│   │   │   │   │   │               │   │   │       └── MergeAwbResource.java
│   │   │   │   │   │               │   │   └── prepare/
│   │   │   │   │   │               │   │       ├── AddLocalJarTask.java
│   │   │   │   │   │               │   │       ├── BundleInfoSourceCreator.java
│   │   │   │   │   │               │   │       ├── PrepareAaptTask.java
│   │   │   │   │   │               │   │       ├── PrepareBundleInfoTask.java
│   │   │   │   │   │               │   │       └── PreparePackageIdsTask.java
│   │   │   │   │   │               │   ├── awo/
│   │   │   │   │   │               │   │   └── utils/
│   │   │   │   │   │               │   │       └── AwoInstaller.java
│   │   │   │   │   │               │   ├── execution/
│   │   │   │   │   │               │   │   └── SkipExecuter.java
│   │   │   │   │   │               │   ├── feature/
│   │   │   │   │   │               │   │   ├── FeatureLibManifestTask.java
│   │   │   │   │   │               │   │   └── PrePareFeatureTask.java
│   │   │   │   │   │               │   ├── helper/
│   │   │   │   │   │               │   │   └── AtlasListTask.java
│   │   │   │   │   │               │   ├── instantapp/
│   │   │   │   │   │               │   │   └── AtlasBundleInstantApp.java
│   │   │   │   │   │               │   ├── library/
│   │   │   │   │   │               │   │   ├── AndroidComponetCreator.java
│   │   │   │   │   │               │   │   ├── AwbGenerator.java
│   │   │   │   │   │               │   │   ├── JarExtractTask.java
│   │   │   │   │   │               │   │   ├── ModuleInfoWriter.java
│   │   │   │   │   │               │   │   └── publish/
│   │   │   │   │   │               │   │       ├── PublishHooker.java
│   │   │   │   │   │               │   │       └── UpdatePomTask.java
│   │   │   │   │   │               │   ├── manager/
│   │   │   │   │   │               │   │   ├── AbstractBundleTask.java
│   │   │   │   │   │               │   │   ├── MtlBaseTaskAction.java
│   │   │   │   │   │               │   │   ├── MtlParallelTask.java
│   │   │   │   │   │               │   │   ├── MtlTaskContext.java
│   │   │   │   │   │               │   │   ├── MtlTaskFactory.java
│   │   │   │   │   │               │   │   ├── MtlTaskFactoryImpl.java
│   │   │   │   │   │               │   │   ├── MtlTaskInjector.java
│   │   │   │   │   │               │   │   ├── TaskCreater.java
│   │   │   │   │   │               │   │   ├── TaskQueryHelper.java
│   │   │   │   │   │               │   │   └── transform/
│   │   │   │   │   │               │   │       ├── MtlInjectTransform.java
│   │   │   │   │   │               │   │       ├── MtlTransformContext.java
│   │   │   │   │   │               │   │       ├── MtlTransformInjector.java
│   │   │   │   │   │               │   │       └── TransformManager.java
│   │   │   │   │   │               │   ├── maven/
│   │   │   │   │   │               │   │   └── PublishToMavenRepositoryHook.java
│   │   │   │   │   │               │   ├── tpatch/
│   │   │   │   │   │               │   │   ├── DiffBundleInfoTask.java
│   │   │   │   │   │               │   │   ├── PackageTPatchConfigAction.java
│   │   │   │   │   │               │   │   ├── TPatchDiffApkBuildTask.java
│   │   │   │   │   │               │   │   ├── TPatchDiffResAPBuildTask.java
│   │   │   │   │   │               │   │   └── TPatchTask.java
│   │   │   │   │   │               │   └── transform/
│   │   │   │   │   │               │       ├── AtlasDataBindingMergeArtifactsTransform.java
│   │   │   │   │   │               │       ├── AtlasDesugarTransform.java
│   │   │   │   │   │               │       ├── AtlasFixStackFramesTransform.java
│   │   │   │   │   │               │       ├── AtlasMergeJavaResourcesTransform.java
│   │   │   │   │   │               │       ├── AtlasProguardTransform.java
│   │   │   │   │   │               │       ├── AtlasTransformUtils.java
│   │   │   │   │   │               │       ├── ClassInjectTransform.java
│   │   │   │   │   │               │       ├── ResourcesShrinker.java
│   │   │   │   │   │               │       ├── TransformReplacer.java
│   │   │   │   │   │               │       └── dex/
│   │   │   │   │   │               │           ├── AtlasDexArchiveBuilderCacheHander.java
│   │   │   │   │   │               │           ├── AtlasDexArchiveBuilderTransform.java
│   │   │   │   │   │               │           ├── AtlasDexMerger.java
│   │   │   │   │   │               │           ├── AtlasDexMergerTransform.java
│   │   │   │   │   │               │           ├── AtlasMainDexMerger.java
│   │   │   │   │   │               │           ├── AtlasMultiDexListTransform.java
│   │   │   │   │   │               │           ├── AwbDexsMerger.java
│   │   │   │   │   │               │           └── DexMergeTransformCallable.java
│   │   │   │   │   │               └── tools/
│   │   │   │   │   │                   ├── BuildHelper.java
│   │   │   │   │   │                   ├── EnvHelper.java
│   │   │   │   │   │                   ├── FileNameUtils.java
│   │   │   │   │   │                   ├── JarUtils.java
│   │   │   │   │   │                   ├── MD5Util.java
│   │   │   │   │   │                   ├── OSUtils.java
│   │   │   │   │   │                   ├── PathUtil.java
│   │   │   │   │   │                   ├── PluginTypeUtils.java
│   │   │   │   │   │                   ├── Profiler.java
│   │   │   │   │   │                   ├── ReflectUtils.java
│   │   │   │   │   │                   ├── TransformInputUtils.java
│   │   │   │   │   │                   ├── VersionUtils.java
│   │   │   │   │   │                   ├── asm/
│   │   │   │   │   │                   │   ├── ClassNameRenamer.java
│   │   │   │   │   │                   │   ├── ClazzBasicHandler.java
│   │   │   │   │   │                   │   ├── ClazzReplacer.java
│   │   │   │   │   │                   │   ├── MethodReplacer.java
│   │   │   │   │   │                   │   ├── field/
│   │   │   │   │   │                   │   │   ├── AsmFieldEditor.java
│   │   │   │   │   │                   │   │   ├── Field.java
│   │   │   │   │   │                   │   │   └── ModifyClassVisiter.java
│   │   │   │   │   │                   │   └── method/
│   │   │   │   │   │                   │       ├── Method.java
│   │   │   │   │   │                   │       ├── MethodReplaceClazzVisitor.java
│   │   │   │   │   │                   │       ├── MethodReplaceMethodVisitor.java
│   │   │   │   │   │                   │       └── MethodStore.java
│   │   │   │   │   │                   ├── bundleinfo/
│   │   │   │   │   │                   │   ├── ApkFileListUtils.java
│   │   │   │   │   │                   │   ├── BundleGraphExecutor.java
│   │   │   │   │   │                   │   ├── BundleInfoUtils.java
│   │   │   │   │   │                   │   ├── BundleItem.java
│   │   │   │   │   │                   │   ├── BundleItemRunner.java
│   │   │   │   │   │                   │   ├── DynamicBundleInfo.java
│   │   │   │   │   │                   │   └── model/
│   │   │   │   │   │                   │       ├── BasicBundleInfo.java
│   │   │   │   │   │                   │       └── BundleInfo.java
│   │   │   │   │   │                   ├── cache/
│   │   │   │   │   │                   │   ├── Cache.java
│   │   │   │   │   │                   │   ├── FileCacheCenter.java
│   │   │   │   │   │                   │   ├── FileCacheException.java
│   │   │   │   │   │                   │   ├── FileLockUtils.java
│   │   │   │   │   │                   │   ├── SimpleLocalCache.java
│   │   │   │   │   │                   │   └── SimpleNetworkCache.java
│   │   │   │   │   │                   ├── classinject/
│   │   │   │   │   │                   │   ├── ApkInjectInfoCreator.java
│   │   │   │   │   │                   │   ├── ClazzInjecter.java
│   │   │   │   │   │                   │   ├── CodeInjectByJavassist.java
│   │   │   │   │   │                   │   ├── FrameworkProperties.java
│   │   │   │   │   │                   │   └── InjectParam.java
│   │   │   │   │   │                   ├── command/
│   │   │   │   │   │                   │   ├── CommandExecutor.java
│   │   │   │   │   │                   │   └── ExecutionException.java
│   │   │   │   │   │                   ├── concurrent/
│   │   │   │   │   │                   │   └── ExecutorServicesHelper.java
│   │   │   │   │   │                   ├── diff/
│   │   │   │   │   │                   │   └── DiffResExtractor.java
│   │   │   │   │   │                   ├── groovy/
│   │   │   │   │   │                   │   └── ClosureFactory.java
│   │   │   │   │   │                   ├── guide/
│   │   │   │   │   │                   │   ├── AtlasConfigField.java
│   │   │   │   │   │                   │   ├── AtlasConfigHelper.java
│   │   │   │   │   │                   │   └── AtlasExtensionOutput.java
│   │   │   │   │   │                   ├── ideaplugin/
│   │   │   │   │   │                   │   ├── ApDownloader.java
│   │   │   │   │   │                   │   └── AwoPropHandler.java
│   │   │   │   │   │                   ├── jarmerge/
│   │   │   │   │   │                   │   └── JarMergerWithOverride.java
│   │   │   │   │   │                   ├── log/
│   │   │   │   │   │                   │   ├── FileLogger.java
│   │   │   │   │   │                   │   └── LogOutputListener.java
│   │   │   │   │   │                   ├── manifest/
│   │   │   │   │   │                   │   ├── AtlasProxy.java
│   │   │   │   │   │                   │   ├── ManifestFileUtils.java
│   │   │   │   │   │                   │   ├── ManifestHelper.java
│   │   │   │   │   │                   │   ├── ManifestInfo.java
│   │   │   │   │   │                   │   ├── Permission.java
│   │   │   │   │   │                   │   └── Result.java
│   │   │   │   │   │                   ├── multidex/
│   │   │   │   │   │                   │   ├── FastMultiDexer.java
│   │   │   │   │   │                   │   ├── dex/
│   │   │   │   │   │                   │   │   ├── DexGroup.java
│   │   │   │   │   │                   │   │   ├── DexMerger.java
│   │   │   │   │   │                   │   │   └── FileComparator.java
│   │   │   │   │   │                   │   └── mutli/
│   │   │   │   │   │                   │       ├── JarRefactor.java
│   │   │   │   │   │                   │       ├── MainDexLister.java
│   │   │   │   │   │                   │       ├── MappingReaderProcess.java
│   │   │   │   │   │                   │       └── NameComparator.java
│   │   │   │   │   │                   ├── process/
│   │   │   │   │   │                   │   └── ApkProcessor.java
│   │   │   │   │   │                   ├── proguard/
│   │   │   │   │   │                   │   ├── AtlasProguardHelper.java
│   │   │   │   │   │                   │   ├── AwbProguardConfiguration.java
│   │   │   │   │   │                   │   ├── BundleProguarder.java
│   │   │   │   │   │                   │   ├── KeepOnlyConfigurationParser.java
│   │   │   │   │   │                   │   ├── ProGuardPercentPrinter.java
│   │   │   │   │   │                   │   ├── domain/
│   │   │   │   │   │                   │   │   ├── Input.java
│   │   │   │   │   │                   │   │   └── Result.java
│   │   │   │   │   │                   │   └── dump/
│   │   │   │   │   │                   │       ├── AbstractClasslVisitor.java
│   │   │   │   │   │                   │       ├── BundleProguardDumper.java
│   │   │   │   │   │                   │       ├── ClassDetailVisitor.java
│   │   │   │   │   │                   │       ├── ClassStructVisitor.java
│   │   │   │   │   │                   │       ├── ClazzRefInfo.java
│   │   │   │   │   │                   │       ├── ClazzRefInfoContainer.java
│   │   │   │   │   │                   │       ├── KeepConverter.java
│   │   │   │   │   │                   │       ├── VisitorDTO.java
│   │   │   │   │   │                   │       └── utils/
│   │   │   │   │   │                   │           └── ReflectUtils.java
│   │   │   │   │   │                   ├── sign/
│   │   │   │   │   │                   │   ├── AndroidSigner.java
│   │   │   │   │   │                   │   ├── LocalSignHelper.java
│   │   │   │   │   │                   │   └── LocalSignedJarBuilder.java
│   │   │   │   │   │                   ├── solib/
│   │   │   │   │   │                   │   ├── NativeSoFilter.java
│   │   │   │   │   │                   │   └── NativeSoUtils.java
│   │   │   │   │   │                   ├── xml/
│   │   │   │   │   │                   │   └── XmlHelper.java
│   │   │   │   │   │                   ├── zip/
│   │   │   │   │   │                   │   ├── BetterZip.java
│   │   │   │   │   │                   │   ├── FileMkUtils.java
│   │   │   │   │   │                   │   └── ZipUtils.java
│   │   │   │   │   │                   └── zipalign/
│   │   │   │   │   │                       └── ZipAlignUtils.java
│   │   │   │   │   └── proguard/
│   │   │   │   │       ├── AtlasProguardConstants.java
│   │   │   │   │       └── io/
│   │   │   │   │           └── JarWriter.java
│   │   │   │   └── resources/
│   │   │   │       └── META-INF/
│   │   │   │           └── gradle-plugins/
│   │   │   │               ├── com.taobao.atlas.application.properties
│   │   │   │               ├── com.taobao.atlas.dexpatch.properties
│   │   │   │               ├── com.taobao.atlas.feature.properties
│   │   │   │               ├── com.taobao.atlas.instantapp.properties
│   │   │   │               ├── com.taobao.atlas.library.properties
│   │   │   │               └── com.taobao.atlas.properties
│   │   │   └── test/
│   │   │       ├── java/
│   │   │       │   ├── com/
│   │   │       │   │   └── taobao/
│   │   │       │   │       ├── asm/
│   │   │       │   │       │   ├── AsmExample.java
│   │   │       │   │       │   ├── AsmFieldTest.java
│   │   │       │   │       │   ├── AsmTest.java
│   │   │       │   │       │   └── Config.java
│   │   │       │   │       └── atlas/
│   │   │       │   │           ├── bundle/
│   │   │       │   │           │   └── BundleDependenyTest.java
│   │   │       │   │           ├── cache/
│   │   │       │   │           │   └── FileLockTest.java
│   │   │       │   │           ├── dex/
│   │   │       │   │           │   └── FastDexMergeTest.java
│   │   │       │   │           └── manifest/
│   │   │       │   │               ├── ManifestHelperTest.java
│   │   │       │   │               └── ManifestTest.java
│   │   │       │   └── proguard/
│   │   │       │       └── KeepOnlyConfigurationParserTest.java
│   │   │       └── resources/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── AndroidManifest2.xml
│   │   │           ├── bundleInfoList.json
│   │   │           └── log4j.properties
│   │   ├── test.sh
│   │   └── todo.txt
│   ├── build.gradle
│   ├── dexpatch/
│   │   ├── .gitignore
│   │   ├── build.gradle
│   │   ├── gradle/
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   ├── gradlew
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   ├── android/
│   │           │   │   └── content/
│   │           │   │       └── res/
│   │           │   │           ├── AXMLResource.java
│   │           │   │           ├── IntReader.java
│   │           │   │           └── chunk/
│   │           │   │               ├── AttributeType.java
│   │           │   │               ├── ChunkType.java
│   │           │   │               ├── ChunkUtil.java
│   │           │   │               ├── PoolItem.java
│   │           │   │               ├── sections/
│   │           │   │               │   ├── ChunkSection.java
│   │           │   │               │   ├── GenericChunkSection.java
│   │           │   │               │   ├── ResourceSection.java
│   │           │   │               │   └── StringSection.java
│   │           │   │               └── types/
│   │           │   │                   ├── AXMLHeader.java
│   │           │   │                   ├── Attribute.java
│   │           │   │                   ├── Buffer.java
│   │           │   │                   ├── Chunk.java
│   │           │   │                   ├── EndTag.java
│   │           │   │                   ├── GenericChunk.java
│   │           │   │                   ├── NameSpace.java
│   │           │   │                   ├── StartTag.java
│   │           │   │                   └── TextTag.java
│   │           │   └── com/
│   │           │       └── taobao/
│   │           │           ├── android/
│   │           │           │   ├── PatchManager.java
│   │           │           │   ├── PatchType.java
│   │           │           │   ├── apatch/
│   │           │           │   │   ├── AndFixFilterImpl.java
│   │           │           │   │   ├── ApkPatch.java
│   │           │           │   │   ├── Build.java
│   │           │           │   │   ├── FastBuild.java
│   │           │           │   │   ├── MergePatch.java
│   │           │           │   │   ├── annotation/
│   │           │           │   │   │   └── MethodReplaceAnnotation.java
│   │           │           │   │   ├── builder/
│   │           │           │   │   │   ├── PatchBuilder.java
│   │           │           │   │   │   └── SignedJarBuilder.java
│   │           │           │   │   └── utils/
│   │           │           │   │       ├── Formater.java
│   │           │           │   │       ├── HexUtil.java
│   │           │           │   │       ├── MappingParser.java
│   │           │           │   │       ├── SmaliDiffUtils.java
│   │           │           │   │       └── TypeGenUtil.java
│   │           │           │   ├── baksmali/
│   │           │           │   │   ├── Renderers/
│   │           │           │   │   │   ├── BooleanRenderer.java
│   │           │           │   │   │   ├── ByteRenderer.java
│   │           │           │   │   │   ├── CharRenderer.java
│   │           │           │   │   │   ├── DoubleRenderer.java
│   │           │           │   │   │   ├── FloatRenderer.java
│   │           │           │   │   │   ├── IntegerRenderer.java
│   │           │           │   │   │   ├── LongRenderer.java
│   │           │           │   │   │   └── ShortRenderer.java
│   │           │           │   │   ├── adaptors/
│   │           │           │   │   │   ├── AnnotationFormatter.java
│   │           │           │   │   │   ├── BlankMethodItem.java
│   │           │           │   │   │   ├── CatchMethodItem.java
│   │           │           │   │   │   ├── ClassDefinition.java
│   │           │           │   │   │   ├── CommentMethodItem.java
│   │           │           │   │   │   ├── CommentedOutMethodItem.java
│   │           │           │   │   │   ├── CommentingIndentingWriter.java
│   │           │           │   │   │   ├── Debug/
│   │           │           │   │   │   │   ├── BeginEpilogueMethodItem.java
│   │           │           │   │   │   │   ├── DebugMethodItem.java
│   │           │           │   │   │   │   ├── EndLocalMethodItem.java
│   │           │           │   │   │   │   ├── EndPrologueMethodItem.java
│   │           │           │   │   │   │   ├── LineNumberMethodItem.java
│   │           │           │   │   │   │   ├── LocalFormatter.java
│   │           │           │   │   │   │   ├── RestartLocalMethodItem.java
│   │           │           │   │   │   │   ├── SetSourceFileMethodItem.java
│   │           │           │   │   │   │   └── StartLocalMethodItem.java
│   │           │           │   │   │   ├── EncodedValue/
│   │           │           │   │   │   │   ├── AnnotationEncodedValueAdaptor.java
│   │           │           │   │   │   │   ├── ArrayEncodedValueAdaptor.java
│   │           │           │   │   │   │   └── EncodedValueAdaptor.java
│   │           │           │   │   │   ├── EndTryLabelMethodItem.java
│   │           │           │   │   │   ├── FieldDefinition.java
│   │           │           │   │   │   ├── Format/
│   │           │           │   │   │   │   ├── ArrayDataMethodItem.java
│   │           │           │   │   │   │   ├── InstructionMethodItem.java
│   │           │           │   │   │   │   ├── InstructionMethodItemFactory.java
│   │           │           │   │   │   │   ├── OffsetInstructionFormatMethodItem.java
│   │           │           │   │   │   │   ├── PackedSwitchMethodItem.java
│   │           │           │   │   │   │   ├── SparseSwitchMethodItem.java
│   │           │           │   │   │   │   └── UnresolvedOdexInstructionMethodItem.java
│   │           │           │   │   │   ├── LabelMethodItem.java
│   │           │           │   │   │   ├── MethodDefinition.java
│   │           │           │   │   │   ├── MethodItem.java
│   │           │           │   │   │   ├── PostInstructionRegisterInfoMethodItem.java
│   │           │           │   │   │   ├── PreInstructionRegisterInfoMethodItem.java
│   │           │           │   │   │   ├── ReferenceFormatter.java
│   │           │           │   │   │   ├── RegisterFormatter.java
│   │           │           │   │   │   └── SyntheticAccessCommentMethodItem.java
│   │           │           │   │   └── util/
│   │           │           │   │       └── ReferenceUtil.java
│   │           │           │   ├── dex/
│   │           │           │   │   ├── Annotation.java
│   │           │           │   │   ├── ClassData.java
│   │           │           │   │   ├── ClassDef.java
│   │           │           │   │   ├── Code.java
│   │           │           │   │   ├── Dex.java
│   │           │           │   │   ├── DexException.java
│   │           │           │   │   ├── DexFormat.java
│   │           │           │   │   ├── DexIndexOverflowException.java
│   │           │           │   │   ├── EncodedValue.java
│   │           │           │   │   ├── EncodedValueCodec.java
│   │           │           │   │   ├── EncodedValueReader.java
│   │           │           │   │   ├── FieldId.java
│   │           │           │   │   ├── Leb128.java
│   │           │           │   │   ├── MethodId.java
│   │           │           │   │   ├── Mutf8.java
│   │           │           │   │   ├── ProtoId.java
│   │           │           │   │   ├── SizeOf.java
│   │           │           │   │   ├── TableOfContents.java
│   │           │           │   │   ├── TypeList.java
│   │           │           │   │   └── util/
│   │           │           │   │       ├── ByteArrayByteInput.java
│   │           │           │   │       ├── ByteInput.java
│   │           │           │   │       ├── ByteOutput.java
│   │           │           │   │       ├── ExceptionWithContext.java
│   │           │           │   │       ├── FileUtils.java
│   │           │           │   │       └── Unsigned.java
│   │           │           │   ├── differ/
│   │           │           │   │   └── dex/
│   │           │           │   │       ├── ApkDiff.java
│   │           │           │   │       ├── BundleDiffResult.java
│   │           │           │   │       ├── DexDiffer.java
│   │           │           │   │       └── PatchException.java
│   │           │           │   ├── dx/
│   │           │           │   │   ├── Version.java
│   │           │           │   │   ├── cf/
│   │           │           │   │   │   ├── attrib/
│   │           │           │   │   │   │   ├── AttAnnotationDefault.java
│   │           │           │   │   │   │   ├── AttCode.java
│   │           │           │   │   │   │   ├── AttConstantValue.java
│   │           │           │   │   │   │   ├── AttDeprecated.java
│   │           │           │   │   │   │   ├── AttEnclosingMethod.java
│   │           │           │   │   │   │   ├── AttExceptions.java
│   │           │           │   │   │   │   ├── AttInnerClasses.java
│   │           │           │   │   │   │   ├── AttLineNumberTable.java
│   │           │           │   │   │   │   ├── AttLocalVariableTable.java
│   │           │           │   │   │   │   ├── AttLocalVariableTypeTable.java
│   │           │           │   │   │   │   ├── AttRuntimeInvisibleAnnotations.java
│   │           │           │   │   │   │   ├── AttRuntimeInvisibleParameterAnnotations.java
│   │           │           │   │   │   │   ├── AttRuntimeVisibleAnnotations.java
│   │           │           │   │   │   │   ├── AttRuntimeVisibleParameterAnnotations.java
│   │           │           │   │   │   │   ├── AttSignature.java
│   │           │           │   │   │   │   ├── AttSourceFile.java
│   │           │           │   │   │   │   ├── AttSynthetic.java
│   │           │           │   │   │   │   ├── BaseAnnotations.java
│   │           │           │   │   │   │   ├── BaseAttribute.java
│   │           │           │   │   │   │   ├── BaseLocalVariables.java
│   │           │           │   │   │   │   ├── BaseParameterAnnotations.java
│   │           │           │   │   │   │   ├── InnerClassList.java
│   │           │           │   │   │   │   ├── RawAttribute.java
│   │           │           │   │   │   │   └── package.html
│   │           │           │   │   │   ├── code/
│   │           │           │   │   │   │   ├── BaseMachine.java
│   │           │           │   │   │   │   ├── BasicBlocker.java
│   │           │           │   │   │   │   ├── ByteBlock.java
│   │           │           │   │   │   │   ├── ByteBlockList.java
│   │           │           │   │   │   │   ├── ByteCatchList.java
│   │           │           │   │   │   │   ├── ByteOps.java
│   │           │           │   │   │   │   ├── BytecodeArray.java
│   │           │           │   │   │   │   ├── ConcreteMethod.java
│   │           │           │   │   │   │   ├── ExecutionStack.java
│   │           │           │   │   │   │   ├── Frame.java
│   │           │           │   │   │   │   ├── LineNumberList.java
│   │           │           │   │   │   │   ├── LocalVariableList.java
│   │           │           │   │   │   │   ├── LocalsArray.java
│   │           │           │   │   │   │   ├── LocalsArraySet.java
│   │           │           │   │   │   │   ├── Machine.java
│   │           │           │   │   │   │   ├── Merger.java
│   │           │           │   │   │   │   ├── OneLocalsArray.java
│   │           │           │   │   │   │   ├── ReturnAddress.java
│   │           │           │   │   │   │   ├── Ropper.java
│   │           │           │   │   │   │   ├── RopperMachine.java
│   │           │           │   │   │   │   ├── SimException.java
│   │           │           │   │   │   │   ├── Simulator.java
│   │           │           │   │   │   │   ├── SwitchList.java
│   │           │           │   │   │   │   ├── ValueAwareMachine.java
│   │           │           │   │   │   │   └── package.html
│   │           │           │   │   │   ├── cst/
│   │           │           │   │   │   │   ├── ConstantPoolParser.java
│   │           │           │   │   │   │   └── ConstantTags.java
│   │           │           │   │   │   ├── direct/
│   │           │           │   │   │   │   ├── AnnotationParser.java
│   │           │           │   │   │   │   ├── AttributeFactory.java
│   │           │           │   │   │   │   ├── AttributeListParser.java
│   │           │           │   │   │   │   ├── ClassPathOpener.java
│   │           │           │   │   │   │   ├── CodeObserver.java
│   │           │           │   │   │   │   ├── DirectClassFile.java
│   │           │           │   │   │   │   ├── FieldListParser.java
│   │           │           │   │   │   │   ├── MemberListParser.java
│   │           │           │   │   │   │   ├── MethodListParser.java
│   │           │           │   │   │   │   ├── StdAttributeFactory.java
│   │           │           │   │   │   │   └── package.html
│   │           │           │   │   │   └── iface/
│   │           │           │   │   │       ├── Attribute.java
│   │           │           │   │   │       ├── AttributeList.java
│   │           │           │   │   │       ├── ClassFile.java
│   │           │           │   │   │       ├── Field.java
│   │           │           │   │   │       ├── FieldList.java
│   │           │           │   │   │       ├── HasAttribute.java
│   │           │           │   │   │       ├── Member.java
│   │           │           │   │   │       ├── Method.java
│   │           │           │   │   │       ├── MethodList.java
│   │           │           │   │   │       ├── ParseException.java
│   │           │           │   │   │       ├── ParseObserver.java
│   │           │           │   │   │       ├── StdAttributeList.java
│   │           │           │   │   │       ├── StdField.java
│   │           │           │   │   │       ├── StdFieldList.java
│   │           │           │   │   │       ├── StdMember.java
│   │           │           │   │   │       ├── StdMethod.java
│   │           │           │   │   │       ├── StdMethodList.java
│   │           │           │   │   │       └── package.html
│   │           │           │   │   ├── command/
│   │           │           │   │   │   ├── DxConsole.java
│   │           │           │   │   │   ├── Main.java
│   │           │           │   │   │   ├── UsageException.java
│   │           │           │   │   │   ├── annotool/
│   │           │           │   │   │   │   ├── AnnotationLister.java
│   │           │           │   │   │   │   └── Main.java
│   │           │           │   │   │   ├── dexer/
│   │           │           │   │   │   │   └── Main.java
│   │           │           │   │   │   ├── dump/
│   │           │           │   │   │   │   ├── Args.java
│   │           │           │   │   │   │   ├── BaseDumper.java
│   │           │           │   │   │   │   ├── BlockDumper.java
│   │           │           │   │   │   │   ├── ClassDumper.java
│   │           │           │   │   │   │   ├── DotDumper.java
│   │           │           │   │   │   │   ├── Main.java
│   │           │           │   │   │   │   └── SsaDumper.java
│   │           │           │   │   │   ├── findusages/
│   │           │           │   │   │   │   ├── FindUsages.java
│   │           │           │   │   │   │   └── Main.java
│   │           │           │   │   │   └── grep/
│   │           │           │   │   │       ├── Grep.java
│   │           │           │   │   │       └── Main.java
│   │           │           │   │   ├── dex/
│   │           │           │   │   │   ├── DexOptions.java
│   │           │           │   │   │   ├── cf/
│   │           │           │   │   │   │   ├── AttributeTranslator.java
│   │           │           │   │   │   │   ├── CfOptions.java
│   │           │           │   │   │   │   ├── CfTranslator.java
│   │           │           │   │   │   │   ├── CodeStatistics.java
│   │           │           │   │   │   │   ├── OptimizerOptions.java
│   │           │           │   │   │   │   └── package.html
│   │           │           │   │   │   ├── code/
│   │           │           │   │   │   │   ├── ArrayData.java
│   │           │           │   │   │   │   ├── BlockAddresses.java
│   │           │           │   │   │   │   ├── CatchBuilder.java
│   │           │           │   │   │   │   ├── CatchHandlerList.java
│   │           │           │   │   │   │   ├── CatchTable.java
│   │           │           │   │   │   │   ├── CodeAddress.java
│   │           │           │   │   │   │   ├── CstInsn.java
│   │           │           │   │   │   │   ├── DalvCode.java
│   │           │           │   │   │   │   ├── DalvInsn.java
│   │           │           │   │   │   │   ├── DalvInsnList.java
│   │           │           │   │   │   │   ├── Dop.java
│   │           │           │   │   │   │   ├── Dops.java
│   │           │           │   │   │   │   ├── FixedSizeInsn.java

================================================
FILE CONTENTS
================================================

================================================
FILE: .github/ISSUE_TEMPLATE.md
================================================
请按照下面的规则提交您的issue,符合标准的issue会被优先处理,
请先查看有没有同类型的issue已经存在.

1. demo问题的issue格式: [demo]:title

   title尽量反应问题的状况,如果是编译问题或者无法运行,正文写明是windows还是mac,如果是不清楚如何使用demo,请先查看https://github.com/alibaba/atlas/blob/master/atlas-demo/README.zh_cn.md
     
2. 容器功能接入或者如何使用的答疑:[use]:title
3. 提新需求的格式:[feature]:title

================================================
FILE: .gitignore
================================================
*.iml
.gradle
.idea/
/local.properties
/.idea/workspace.xml
/.idea/libraries
!.idea/codeStyleSettings.xml
.DS_Store
#/build
/captures
.vscode/

# Taken from Android.gitignore https://github.com/github/gitignore/blob/master/Android.gitignore
#
# Built application files
*.apk
*.ap_

# Files for the Dalvik VM
*.dex

# Java class files
*.class

# Generated files
bin/
gen/
out/

# Gradle files
.gradle/
#build/
!**/atlas-aapt/**/build/
!**/src/**/build/

# Local configuration file (sdk path, etc)
local.properties

# Proguard folder generated by Eclipse
#proguard/
!**/src/**/proguard/

# Log Files
*.log

# Android Studio Navigation editor temp files
.navigation/

# Android Studio captures folder
captures/

# Intellij
*.iml

atlas-demo/AtlasDemo/hisTpatch/


================================================
FILE: .gitmodules
================================================
[submodule "atlas-aapt/build"]
	path = atlas-aapt/build
	url = https://android.googlesource.com/platform/build
[submodule "atlas-aapt/prebuilts/clang/darwin-x86/host/3.6"]
	path = atlas-aapt/prebuilts/clang/darwin-x86/host/3.6
	url = https://android.googlesource.com/platform/prebuilts/clang/darwin-x86/host/3.6
[submodule "atlas-aapt/prebuilts/clang/host/darwin-x86"]
	path = atlas-aapt/prebuilts/clang/host/darwin-x86
	url = https://android.googlesource.com/platform/prebuilts/clang/host/darwin-x86


================================================
FILE: CONTRIBUTING.md
================================================
# Atlas Contributing Guide

Welcome to create [Pull Requests](https://github.com/alibaba/atlas/compare) or open [Issues](https://github.com/alibaba/atlas/issues/new) for bugfix, doc, example, suggestion and anything.

## Branch Management

```
master
 ↑
dev         <--- PR(hotfix/typo/3rd-PR)
 ↑ PR
{domain}-feature-{date}
```  
Atlas Branches

0. `master` branch
    0. `master` is the latest (pre-)release branch.
0. `dev` branch
    0. `dev` is the stable developing branch. [Github Release](https://help.github.com/articles/creating-releases/) is used to publish a (pre-)release version to `master` branch.
    0. ***It's RECOMMENDED to commit hotfix (like typo) or feature PR to `dev`***.
0. `{domain}-feature-{date}` branch
    0. The branch for a developing iteration, e.g. `core-feature-20170118` is an atlas-core developing iteration which is done at 2017.01.18. `{domain}` consists of `core`, `update`, `plugin` and `aapt`. 
    0. **DO NOT commit any PR to such a branch**.

### Branch Name 

```
{module}-{action}-{shortName}
```

* `{module}`, see [commit log module](#commit-log)
* `{action}`
    * `feature`: checkout from `{module}` and merge to `{module}` later. If `{module}` not exists, merge to `dev`
    * `bugfix`: like `feature`, for bugfix only
    * `hotfix`: checkout from `master` or release `tag`, merge to `master` and `{module}` later. If `{module}` not exists, merge to `dev`

for example:

* `core-bugfix-memory`
* `plugin-feature-redex`
* `update-hotfix-sequence`

## Commit Log

```
[{module}] {description}
```
* `{module}`
    * Including: atlas-core, atlas-aapt, atlas-update, atlas-gradle-plugin, atlas-doc, atlas-website, atlas-demo, test, all 
* `{description}`
    * It's ***RECOMMENDED*** to close issue with syntax `close #66` or `fix #66`, see [the doc](https://help.github.com/articles/closing-issues-via-commit-messages/) for more detail. It's useful for responding issues.

for example:

* `[all] close #66, add refreshing for memory`
* `[atlas-doc] fix #68, update some instruction`
* `[atlas-demo] remove abc`


## Pull Request

[Create Pull Requests](https://github.com/alibaba/atlas/compare).

## Contributor License Agreement
In order to contribute code to Atlas, you (or the legal entity you represent) must sign the Contributor License Agreement (CLA).

You can read and sign the [Alibaba CLA](https://cla-assistant.io/alibaba/atlas) online.

For CLA assistant service works properly, please make sure you have added email address that your commits linked to GitHub account.

Please read [How to setting your Email address in Git](https://help.github.com/articles/setting-your-email-in-git/) and [How to adding an email address to your GitHub Account](https://help.github.com/articles/adding-an-email-address-to-your-github-account/).


================================================
FILE: LICENSE
================================================
                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.

   END OF TERMS AND CONDITIONS

   APPENDIX: How to apply the Apache License to your work.

      To apply the Apache License to your work, attach the following
      boilerplate notice, with the fields enclosed by brackets "{}"
      replaced with your own identifying information. (Don't include
      the brackets!)  The text should be enclosed in the appropriate
      comment syntax for the file format. We also recommend that a
      file or class name and description of purpose be included on the
      same "printed page" as the copyright notice for easier
      identification within third-party archives.

   Copyright {yyyy} {name of copyright owner}

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.


================================================
FILE: NOTICE
================================================
Atlas-Framework
Copyright 2016 Alibaba Group

This product includes software developed at Alibaba Group. (http://www.alibabagroup.com).

This product modifed software aapt(https://android.googlesource.com/platform/frameworks/base/+/master/tools/aapt/) developed by The Android Open Source Project (http://source.android.com).

This product modifed software Android Gradle Build System(https://android.googlesource.com/platform/tools/base/+/gradle-dev/build-system/) developed by The Android Open Source Project (http://source.android.com).


================================================
FILE: README.md
================================================
# Atlas

[![license](http://img.shields.io/badge/license-Apache2.0-brightgreen.svg?style=flat)](https://github.com/alibaba/atlas/blob/master/LICENSE)
[![Release Version](https://img.shields.io/badge/atlas__core-5.1.0.9--rc26-orange.svg)](https://github.com/alibaba/atlas/releases/tag/v5.1.0.9-rc26) 
[![Release Version](https://img.shields.io/badge/atlasplugin-3.0.1--rc88-green.svg)](https://github.com/alibaba/atlas/releases/tag/v5.1.0.9-rc26) 


> A powerful Android Dynamic Component Framework.

Atlas is an Android client-side containerization framework. we call it android dynamic component framework.

Atlas provides decoupled, component, and dynamic support. Atlas covers various issues in the project coding period, Apk run-time and follow-up operation and maintenance.

In the project period, Atlas enable engineers independent development, independent debug, because their project were physical isolation.

In the apk run-time, Atlas has complete component life cycle, class isolation and other mechanisms.

In the operation and maintenance period, Atlas provide rapid incremental update and rapid upgrade capacity.

Atlas put the work into the project period as much as possible, to ensure runtime simple and stable, maintenance easy.

------

Compared with multidex solution, Atlas not only solved the limitation of the method count(65535), but also clarified the boundary of development, provied the powerful capabilities for Android development, such as Parallel Iteration, Rapid Development, Flexible Release, Dynamically Update, Quick Fix Online Failure.

Unlike some Android plugin frameworks, Atlas is a component framework (we call it Bundle), Atlas is not a multi-process framework.

------
You can see there were three main library in this project ([atlas-core](./atlas-core)/[atlas-update](./atlas-update)/[atlas-gradle-plugin](./atlas-gradle-plugin))

* [atlas-core](./atlas-core): This is client-side core library, it's job is to install each bundle, load the classes and resources on-demand when runtime.
* [atlas-update](./atlas-update): This is client-side update library, which provide dexmerge capacity for update or upgrade.
* [atlas-gradle-plugin](./atlas-gradle-plugin): This is Android Studio Gradle Plugin for engineers developing in project period, because we change some android default package mechanisms, include android aapt [atlas-aapt](./atlas-aapt).

## Use Atlas

* [Demo](./atlas-demo)
* Doc: [English](), [中文](./atlas-docs)
* DingTalk im group: Scan the follow QR code or Search group 11727755 using DingTalk(钉钉) app.
![dingtalk.jpg](assets/dingtalk.jpg) 


## Support
----------
Atlas support all Android version from Android 4.0 to 9.0. 

Follow is support status.

Runtime | Android Version | Support
------  | --------------- | --------
Dalvik  | 2.2             | Not Test
Dalvik  | 2.3             | Not Test
Dalvik  | 3.0             | Not Test
Dalvik  | 4.0-4.4         | Yes
ART     | 5.0             | Yes
ART     | 5.1             | Yes
ART     | M               | Yes
ART     | N               | Yes
ART     | 8.0             | Yes
ART     | 9.0             | Yes

<!--## Contributing

See [Atlas Contributing Guide](./CONTRIBUTING.md) for more information.
 No newline at end of file
-->


================================================
FILE: _config.yml
================================================
theme: jekyll-theme-cayman

================================================
FILE: atlas-aapt/.gitignore
================================================
.idea/
.ccache/
out/
out-x86_64/
out-x86/
ShakaAaptBin/

================================================
FILE: atlas-aapt/CMakeLists.txt
================================================
cmake_minimum_required(VERSION 3.3)
project(ShakaAapt)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

set(AAPTROOT frameworks/base/tools/aapt)
set(aaptMain ${AAPTROOT}/Main.cpp)
set(aaptSources
        ${AAPTROOT}/AaptAssets.cpp
        ${AAPTROOT}/AaptConfig.cpp
        ${AAPTROOT}/AaptUtil.cpp
        ${AAPTROOT}/AaptXml.cpp
        ${AAPTROOT}/ApkBuilder.cpp
        ${AAPTROOT}/Command.cpp
        ${AAPTROOT}/CrunchCache.cpp
        ${AAPTROOT}/FileFinder.cpp
        ${AAPTROOT}/Images.cpp
        ${AAPTROOT}/Package.cpp
        ${AAPTROOT}/pseudolocalize.cpp
        ${AAPTROOT}/Resource.cpp
        ${AAPTROOT}/ResourceFilter.cpp
        ${AAPTROOT}/ResourceIdCache.cpp
        ${AAPTROOT}/ResourceTable.cpp
        ${AAPTROOT}/SourcePos.cpp
        ${AAPTROOT}/StringPool.cpp
        ${AAPTROOT}/WorkQueue.cpp
        ${AAPTROOT}/XMLNode.cpp
        ${AAPTROOT}/ZipEntry.cpp
        ${AAPTROOT}/ZipFile.cpp
)

set(LIB_androidfw_ROOT frameworks/base/libs/androidfw)
set(LIB_androidfw_commonSources
        ${LIB_androidfw_ROOT}/Asset.cpp
        ${LIB_androidfw_ROOT}/AssetDir.cpp
        ${LIB_androidfw_ROOT}/AssetManager.cpp
        ${LIB_androidfw_ROOT}/misc.cpp
        ${LIB_androidfw_ROOT}/ObbFile.cpp
        ${LIB_androidfw_ROOT}/ResourceTypes.cpp
        ${LIB_androidfw_ROOT}/StreamingZipInflater.cpp
        ${LIB_androidfw_ROOT}/TypeWrappers.cpp
        ${LIB_androidfw_ROOT}/ZipFileRO.cpp
        ${LIB_androidfw_ROOT}/ZipUtils.cpp)

set(LIB_LIBUTILS system/core/libutils)
set(LIB_LIBUTILS_commonSources
        ${LIB_LIBUTILS}/BlobCache.cpp
        ${LIB_LIBUTILS}/CallStack.cpp
        ${LIB_LIBUTILS}/FileMap.cpp
        ${LIB_LIBUTILS}/JenkinsHash.cpp
        ${LIB_LIBUTILS}/LinearTransform.cpp
        ${LIB_LIBUTILS}/Log.cpp
        ${LIB_LIBUTILS}/NativeHandle.cpp
        ${LIB_LIBUTILS}/Printer.cpp
        ${LIB_LIBUTILS}/ProcessCallStack.cpp
        ${LIB_LIBUTILS}/PropertyMap.cpp
        ${LIB_LIBUTILS}/RefBase.cpp
        ${LIB_LIBUTILS}/SharedBuffer.cpp
        ${LIB_LIBUTILS}/Static.cpp
        ${LIB_LIBUTILS}/StopWatch.cpp
        ${LIB_LIBUTILS}/String8.cpp
        ${LIB_LIBUTILS}/String16.cpp
        ${LIB_LIBUTILS}/SystemClock.cpp
        ${LIB_LIBUTILS}/Threads.cpp
        ${LIB_LIBUTILS}/Timers.cpp
        ${LIB_LIBUTILS}/Tokenizer.cpp
        ${LIB_LIBUTILS}/Unicode.cpp
        ${LIB_LIBUTILS}/VectorImpl.cpp
        ${LIB_LIBUTILS}/misc.cpp
)

set(LIB_EXPAT external/expat)
set(LIB_EXPAT_commonSources
    ${LIB_EXPAT}/lib/xmlparse.c
    ${LIB_EXPAT}/lib/xmlrole.c
    ${LIB_EXPAT}/lib/xmltok.c
    ${LIB_EXPAT}/lib/xmltok_impl.c
    ${LIB_EXPAT}/lib/xmltok_ns.c
)

set(SOURCE_FILES ${SOURCE_FILES}
        ${aaptMain}
        ${aaptSources}
        ${LIB_androidfw_commonSources}
        ${LIB_LIBUTILS_commonSources}
        ${LIB_EXPAT_commonSources}
)

include_directories(${AAPTROOT})
include_directories(frameworks/base/include
        external/safe-iop/include
        system/core/include
        external/zlib
        external/expat/lib
)

add_definitions(-DXML_TOK_IMPL_C)

add_executable(ShakaAapt ${SOURCE_FILES})

================================================
FILE: atlas-aapt/Makefile
================================================
### DO NOT EDIT THIS FILE ###
include build/core/main.mk
### DO NOT EDIT THIS FILE ###


================================================
FILE: atlas-aapt/README.md
================================================
# atlas-aapt

This project base on [ShakaAapt](https://github.com/rover12421/ShakaAapt),which strip the necessary aapt code from AOSP android-7.0.0_r6 branch.

## Compile Env

Please refer to AOSP

## atlas-aapt

atlas-aapt expand follow options base on AOSP aapt:

1. --customized-package-id: generally aapt typed package resource id is 0x7f, this is the application bundle package-id of resources. Use this option to specify the resource package-id for other values, but must be less than or equal to 0x7f. (example: - customized package - id 126).

2. --use-skt-package-name: generally a package reference another package of resources, resources must be combined with the package name for reference, such as a reference when android resource must be combined with '@ android:' for reference. Use this option, can eliminate the process of writing a package name, find resources directly. The name of this package is usually the main atlas package name.

3. -B: used for dynamic deployment of resources, if you want to hit this package based on the a package of resources patch package, so use this option to specify the basic package.

================================================
FILE: atlas-aapt/README.zh-cn.md
================================================
## atlas-aapt

此项目基于[ShakaAapt](https://github.com/rover12421/ShakaAapt),该项目抽离了AOSP——android-7.0.0_r6中编译aapt的必要代码。

## 编译环境

具体参考AOSP编译官方文档

## atlas-aapt提供的功能

atlas-aapt在官方aapt的基础上添加了以下扩展选项:

1. --customized-package-id:一般aapt打出来包的资源id都是以7f开头,这个就是应用包资源的package-id。使用这个选项可以指定资源的package-id为其他数值,但是必须小于等于7f。(示例:--customized-package-id 126)。
2. --use-skt-package-name:一般一个包引用另一个包的资源的时候,都必须加上资源的包名来进行引用,比如引用android的资源的时候必须加上`@android:`来进行引用。使用这个选项,可以省去写包名的过程,直接找到资源。这个包的名字通常是atlas中主包的包名。
3. -B:资源动态部署用,如果你想基于一个包来打出这个包的资源patch包,那么使用该选项来指定基础包。

================================================
FILE: atlas-aapt/UpdateAndroidSource.sh
================================================
#! /bin/bash
SRCROOT=/Develop/android/source/android-last
DESROOT=.

array=( \
	bionic/libc/include \
	external/compiler-rt \
	external/expat \
	external/libcxx \
	external/libcxxabi \
	external/libpng \
	external/safe-iop \
	external/zlib \
	frameworks/base/include \
	frameworks/base/libs/androidfw \
	frameworks/base/tools/aapt \
	frameworks/native/include \
	libnativehelper \
	prebuilts/clang/darwin-x86 \
	prebuilts/clang/host \
	prebuilts/gcc \
	sdk/build \
	system/core/base \
	system/core/include \
	system/core/libcutils \
	system/core/liblog \
	system/core/libutils \
	system/core/libziparchive \
	)

for var in ${array[@]};do
rsync -aP --delete $SRCROOT/$var/ $DESROOT/$var/ \
  --exclude .git \
  --exclude test \
  --exclude tests \
  --exclude testdata \
  --exclude examples \
  --exclude doc \
  --exclude www \
  --exclude unittests \
  --exclude common \
  --exclude linux-x86/mips \
  --exclude linux-x86/arm \
  --exclude linux-x86/aarch64 \
  --exclude linux-x86/x86 \
  --exclude linux-x86/host/x86_64-linux-glibc2.11-4.8 \
  --exclude linux-x86/host/x86_64-w64-mingw32-4.8 \
  --exclude darwin-x86/mips \
  --exclude darwin-x86/arm \
  --exclude darwin-x86/aarch64 \
  --exclude darwin-x86/x86
done






================================================
FILE: atlas-aapt/bionic/libc/include/alloca.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */
#ifndef _ALLOCA_H
#define _ALLOCA_H

#define alloca(size)   __builtin_alloca(size)

#endif /* _ALLOCA_H */



================================================
FILE: atlas-aapt/bionic/libc/include/android/api-level.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef ANDROID_API_LEVEL_H
#define ANDROID_API_LEVEL_H

/*
 * Magic version number for a current development build, which has
 * not yet turned into an official release.
 */
#define __ANDROID_API__ 10000

#endif /* ANDROID_API_LEVEL_H */


================================================
FILE: atlas-aapt/bionic/libc/include/android/dlext.h
================================================
/*
 * Copyright (C) 2014 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#ifndef __ANDROID_DLEXT_H__
#define __ANDROID_DLEXT_H__

#include <stddef.h>
#include <stdint.h>
#include <sys/cdefs.h>
#include <sys/types.h>  /* for off64_t */

__BEGIN_DECLS

/* bitfield definitions for android_dlextinfo.flags */
enum {
  /* When set, the reserved_addr and reserved_size fields must point to an
   * already-reserved region of address space which will be used to load the
   * library if it fits. If the reserved region is not large enough, the load
   * will fail.
   */
  ANDROID_DLEXT_RESERVED_ADDRESS      = 0x1,

  /* As DLEXT_RESERVED_ADDRESS, but if the reserved region is not large enough,
   * the linker will choose an available address instead.
   */
  ANDROID_DLEXT_RESERVED_ADDRESS_HINT = 0x2,

  /* When set, write the GNU RELRO section of the mapped library to relro_fd
   * after relocation has been performed, to allow it to be reused by another
   * process loading the same library at the same address. This implies
   * ANDROID_DLEXT_USE_RELRO.
   */
  ANDROID_DLEXT_WRITE_RELRO           = 0x4,

  /* When set, compare the GNU RELRO section of the mapped library to relro_fd
   * after relocation has been performed, and replace any relocated pages that
   * are identical with a version mapped from the file.
   */
  ANDROID_DLEXT_USE_RELRO             = 0x8,

  /* Instruct dlopen to use library_fd instead of opening file by name.
   * The filename parameter is still used to identify the library.
   */
  ANDROID_DLEXT_USE_LIBRARY_FD        = 0x10,

  /* If opening a library using library_fd read it starting at library_fd_offset.
   * This flag is only valid when ANDROID_DLEXT_USE_LIBRARY_FD is set.
   */
  ANDROID_DLEXT_USE_LIBRARY_FD_OFFSET    = 0x20,

  /* When set, do not check if the library has already been loaded by file stat(2)s.
   *
   * This flag allows forced loading of the library in the case when for some
   * reason multiple ELF files share the same filename (because the already-loaded
   * library has been removed and overwritten, for example).
   *
   * Note that if the library has the same dt_soname as an old one and some other
   * library has the soname in DT_NEEDED list, the first one will be used to resolve any
   * dependencies.
   */
  ANDROID_DLEXT_FORCE_LOAD = 0x40,

  /* When set, if the minimum p_vaddr of the ELF file's PT_LOAD segments is non-zero,
   * the dynamic linker will load it at that address.
   *
   * This flag is for ART internal use only.
   */
  ANDROID_DLEXT_FORCE_FIXED_VADDR = 0x80,

  /* Instructs dlopen to load the library at the address specified by reserved_addr.
   *
   * The difference between ANDROID_DLEXT_LOAD_AT_FIXED_ADDRESS and ANDROID_DLEXT_RESERVED_ADDRESS
   * is that for ANDROID_DLEXT_LOAD_AT_FIXED_ADDRESS the linker reserves memory at reserved_addr
   * whereas for ANDROID_DLEXT_RESERVED_ADDRESS the linker relies on the caller to reserve the memory.
   *
   * This flag can be used with ANDROID_DLEXT_FORCE_FIXED_VADDR; when ANDROID_DLEXT_FORCE_FIXED_VADDR
   * is set and load_bias is not 0 (load_bias is min(p_vaddr) of PT_LOAD segments) this flag is ignored.
   * This is implemented this way because the linker has to pick one address over the other and this
   * way is more convenient for art. Note that ANDROID_DLEXT_FORCE_FIXED_VADDR does not generate
   * an error when min(p_vaddr) is 0.
   *
   * Cannot be used with ANDROID_DLEXT_RESERVED_ADDRESS or ANDROID_DLEXT_RESERVED_ADDRESS_HINT.
   *
   * This flag is for ART internal use only.
   */
  ANDROID_DLEXT_LOAD_AT_FIXED_ADDRESS = 0x100,

  /* This flag used to load library in a different namespace. The namespace is
   * specified in library_namespace.
   */
  ANDROID_DLEXT_USE_NAMESPACE = 0x200,

  /* Mask of valid bits */
  ANDROID_DLEXT_VALID_FLAG_BITS       = ANDROID_DLEXT_RESERVED_ADDRESS |
                                        ANDROID_DLEXT_RESERVED_ADDRESS_HINT |
                                        ANDROID_DLEXT_WRITE_RELRO |
                                        ANDROID_DLEXT_USE_RELRO |
                                        ANDROID_DLEXT_USE_LIBRARY_FD |
                                        ANDROID_DLEXT_USE_LIBRARY_FD_OFFSET |
                                        ANDROID_DLEXT_FORCE_LOAD |
                                        ANDROID_DLEXT_FORCE_FIXED_VADDR |
                                        ANDROID_DLEXT_LOAD_AT_FIXED_ADDRESS |
                                        ANDROID_DLEXT_USE_NAMESPACE,
};

struct android_namespace_t;

typedef struct {
  uint64_t flags;
  void*   reserved_addr;
  size_t  reserved_size;
  int     relro_fd;
  int     library_fd;
  off64_t library_fd_offset;
  struct android_namespace_t* library_namespace;
} android_dlextinfo;

extern void* android_dlopen_ext(const char* filename, int flag, const android_dlextinfo* extinfo);

__END_DECLS

#endif /* __ANDROID_DLEXT_H__ */


================================================
FILE: atlas-aapt/bionic/libc/include/android/legacy_errno_inlines.h
================================================
/*
 * Copyright (C) 2015 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _ANDROID_LEGACY_ERRNO_INLINES_H
#define _ANDROID_LEGACY_ERRNO_INLINES_H

#include <sys/cdefs.h>

__BEGIN_DECLS

static __inline int __attribute__((deprecated)) __set_errno(int n) {
  errno = n;
  return -1;
}

__END_DECLS

#endif /* _ANDROID_LEGACY_ERRNO_INLINES_H */


================================================
FILE: atlas-aapt/bionic/libc/include/android/legacy_signal_inlines.h
================================================
/*
 * Copyright (C) 2015 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _ANDROID_LEGACY_SIGNAL_INLINES_H_
#define _ANDROID_LEGACY_SIGNAL_INLINES_H_

#include <string.h>
#include <sys/cdefs.h>

__BEGIN_DECLS

extern sighandler_t bsd_signal(int signum, sighandler_t handler);

static __inline int sigismember(sigset_t *set, int signum) {
  /* Signal numbers start at 1, but bit positions start at 0. */
  int bit = signum - 1;
  const unsigned long *local_set = (const unsigned long *)set;
  if (set == NULL || bit < 0 || bit >= (int)(8 * sizeof(sigset_t))) {
    errno = EINVAL;
    return -1;
  }
  return (int)((local_set[bit / LONG_BIT] >> (bit % LONG_BIT)) & 1);
}

static __inline int sigaddset(sigset_t *set, int signum) {
  /* Signal numbers start at 1, but bit positions start at 0. */
  int bit = signum - 1;
  unsigned long *local_set = (unsigned long *)set;
  if (set == NULL || bit < 0 || bit >= (int)(8 * sizeof(sigset_t))) {
    errno = EINVAL;
    return -1;
  }
  local_set[bit / LONG_BIT] |= 1UL << (bit % LONG_BIT);
  return 0;
}

static __inline int sigdelset(sigset_t *set, int signum) {
  /* Signal numbers start at 1, but bit positions start at 0. */
  int bit = signum - 1;
  unsigned long *local_set = (unsigned long *)set;
  if (set == NULL || bit < 0 || bit >= (int)(8 * sizeof(sigset_t))) {
    errno = EINVAL;
    return -1;
  }
  local_set[bit / LONG_BIT] &= ~(1UL << (bit % LONG_BIT));
  return 0;
}

static __inline int sigemptyset(sigset_t *set) {
  if (set == NULL) {
    errno = EINVAL;
    return -1;
  }
  memset(set, 0, sizeof(sigset_t));
  return 0;
}

static __inline int sigfillset(sigset_t *set) {
  if (set == NULL) {
    errno = EINVAL;
    return -1;
  }
  memset(set, ~0, sizeof(sigset_t));
  return 0;
}

static __inline sighandler_t signal(int s, sighandler_t f) {
  return bsd_signal(s, f);
}

__END_DECLS

#endif /* _ANDROID_LEGACY_SIGNAL_INLINES_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/android/legacy_stdlib_inlines.h
================================================
/*
 * Copyright (C) 2015 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _ANDROID_LEGACY_STDLIB_INLINES_H_
#define _ANDROID_LEGACY_STDLIB_INLINES_H_

#include <sys/cdefs.h>

__BEGIN_DECLS

static __inline float strtof(const char *nptr, char **endptr) {
  return (float)strtod(nptr, endptr);
}

static __inline double atof(const char *nptr) { return (strtod(nptr, NULL)); }

static __inline int abs(int __n) { return (__n < 0) ? -__n : __n; }

static __inline long labs(long __n) { return (__n < 0L) ? -__n : __n; }

static __inline long long llabs(long long __n) {
  return (__n < 0LL) ? -__n : __n;
}

static __inline int rand(void) { return (int)lrand48(); }

static __inline void srand(unsigned int __s) { srand48(__s); }

static __inline long random(void) { return lrand48(); }

static __inline void srandom(unsigned int __s) { srand48(__s); }

static __inline int grantpt(int __fd __attribute((unused))) {
  return 0; /* devpts does this all for us! */
}

__END_DECLS

#endif /* _ANDROID_LEGACY_STDLIB_INLINES_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/android/legacy_sys_atomics_inlines.h
================================================
/*
 * Copyright (C) 2015 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _ANDROID_LEGACY_SYS_ATOMICS_INLINES_H_
#define _ANDROID_LEGACY_SYS_ATOMICS_INLINES_H_

#include <sys/cdefs.h>

__BEGIN_DECLS

/* Note: atomic operations that were exported by the C library didn't
 *       provide any memory barriers, which created potential issues on
 *       multi-core devices. We now define them as inlined calls to
 *       GCC sync builtins, which always provide a full barrier.
 *
 *       NOTE: The C library still exports atomic functions by the same
 *              name to ensure ABI stability for existing NDK machine code.
 *
 *       If you are an NDK developer, we encourage you to rebuild your
 *       unmodified sources against this header as soon as possible.
 */
#define __ATOMIC_INLINE__ static __inline __attribute__((always_inline))

__ATOMIC_INLINE__ int __atomic_cmpxchg(int old, int _new, volatile int *ptr) {
  /* We must return 0 on success */
  return __sync_val_compare_and_swap(ptr, old, _new) != old;
}

__ATOMIC_INLINE__ int __atomic_swap(int _new, volatile int *ptr) {
  int prev;
  do {
    prev = *ptr;
  } while (__sync_val_compare_and_swap(ptr, prev, _new) != prev);
  return prev;
}

__ATOMIC_INLINE__ int __atomic_dec(volatile int *ptr) {
  return __sync_fetch_and_sub(ptr, 1);
}

__ATOMIC_INLINE__ int __atomic_inc(volatile int *ptr) {
  return __sync_fetch_and_add(ptr, 1);
}

__END_DECLS

#endif /* _ANDROID_LEGACY_SYS_ATOMICS_INLINES_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/android/legacy_sys_stat_inlines.h
================================================
/*
 * Copyright (C) 2015 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _ANDROID_LEGACY_SYS_STAT_INLINES_H_
#define _ANDROID_LEGACY_SYS_STAT_INLINES_H_

#include <sys/cdefs.h>

__BEGIN_DECLS

static __inline int mkfifo(const char *__p, mode_t __m) {
  return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
}

__END_DECLS

#endif /* _ANDROID_LEGACY_SYS_STAT_INLINES_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/android/legacy_termios_inlines.h
================================================
/*
 * Copyright (C) 2015 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _ANDROID_LEGACY_TERMIOS_INLINES_H_
#define _ANDROID_LEGACY_TERMIOS_INLINES_H_

#include <linux/termios.h>
#include <sys/cdefs.h>
#include <sys/ioctl.h>
#include <sys/types.h>

__BEGIN_DECLS

static __inline int tcgetattr(int fd, struct termios *s) {
  return ioctl(fd, TCGETS, s);
}

static __inline int tcsetattr(int fd, int __opt, const struct termios *s) {
  return ioctl(fd, __opt, (void *)s);
}

static __inline int tcflow(int fd, int action) {
  return ioctl(fd, TCXONC, (void *)(intptr_t)action);
}

static __inline int tcflush(int fd, int __queue) {
  return ioctl(fd, TCFLSH, (void *)(intptr_t)__queue);
}

static __inline pid_t tcgetsid(int fd) {
  pid_t _pid;
  return ioctl(fd, TIOCGSID, &_pid) ? (pid_t)-1 : _pid;
}

static __inline int tcsendbreak(int fd, int __duration) {
  return ioctl(fd, TCSBRKP, (void *)(uintptr_t)__duration);
}

static __inline speed_t cfgetospeed(const struct termios *s) {
  return (speed_t)(s->c_cflag & CBAUD);
}

static __inline int cfsetospeed(struct termios *s, speed_t speed) {
  s->c_cflag = (s->c_cflag & ~CBAUD) | (speed & CBAUD);
  return 0;
}

static __inline speed_t cfgetispeed(const struct termios *s) {
  return (speed_t)(s->c_cflag & CBAUD);
}

static __inline int cfsetispeed(struct termios *s, speed_t speed) {
  s->c_cflag = (s->c_cflag & ~CBAUD) | (speed & CBAUD);
  return 0;
}

static __inline void cfmakeraw(struct termios *s) {
  s->c_iflag &=
      ~(IGNBRK | BRKINT | PARMRK | ISTRIP | INLCR | IGNCR | ICRNL | IXON);
  s->c_oflag &= ~OPOST;
  s->c_lflag &= ~(ECHO | ECHONL | ICANON | ISIG | IEXTEN);
  s->c_cflag &= ~(CSIZE | PARENB);
  s->c_cflag |= CS8;
}

__END_DECLS

#endif /* _ANDROID_LEGACY_TERMIOS_INLINES_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/android/set_abort_message.h
================================================
/*
 * Copyright (C) 2014 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _SET_ABORT_MESSAGE_H
#define _SET_ABORT_MESSAGE_H

#include <sys/cdefs.h>

__BEGIN_DECLS

void android_set_abort_message(const char* msg);

__END_DECLS

#endif // _SET_ABORT_MESSAGE_H


================================================
FILE: atlas-aapt/bionic/libc/include/ar.h
================================================
/*	$OpenBSD: ar.h,v 1.3 2003/06/02 19:34:12 millert Exp $	*/
/*	$NetBSD: ar.h,v 1.4 1994/10/26 00:55:43 cgd Exp $	*/

/*-
 * Copyright (c) 1991, 1993
 *	The Regents of the University of California.  All rights reserved.
 * (c) UNIX System Laboratories, Inc.
 * All or some portions of this file are derived from material licensed
 * to the University of California by American Telephone and Telegraph
 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
 * the permission of UNIX System Laboratories, Inc.
 *
 * This code is derived from software contributed to Berkeley by
 * Hugh Smith at The University of Guelph.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 *	@(#)ar.h	8.2 (Berkeley) 1/21/94
 */

#ifndef _AR_H_
#define	_AR_H_

/* Pre-4BSD archives had these magic numbers in them. */
#define	OARMAG1	0177555
#define	OARMAG2	0177545

#define	ARMAG		"!<arch>\n"	/* ar "magic number" */
#define	SARMAG		8		/* strlen(ARMAG); */

#define	AR_EFMT1	"#1/"		/* extended format #1 */

struct ar_hdr {
	char ar_name[16];		/* name */
	char ar_date[12];		/* modification time */
	char ar_uid[6];			/* user id */
	char ar_gid[6];			/* group id */
	char ar_mode[8];		/* octal file permissions */
	char ar_size[10];		/* size in bytes */
#define	ARFMAG	"`\n"
	char ar_fmag[2];		/* consistency check */
};

#endif /* !_AR_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/arpa/inet.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _ARPA_INET_H_
#define _ARPA_INET_H_

#include <stdint.h>
#include <sys/types.h>
#include <netinet/in.h>

__BEGIN_DECLS

in_addr_t inet_addr(const char*);
int inet_aton(const char*, struct in_addr*);
in_addr_t inet_lnaof(struct in_addr);
struct in_addr inet_makeaddr(in_addr_t, in_addr_t);
in_addr_t inet_netof(struct in_addr);
in_addr_t inet_network(const char*);
char* inet_ntoa(struct in_addr);
const char* inet_ntop(int, const void*, char*, socklen_t);
unsigned int inet_nsap_addr(const char*, unsigned char*, int);
char* inet_nsap_ntoa(int, const unsigned char*, char*);
int inet_pton(int, const char*, void*);

__END_DECLS

#endif /* _ARPA_INET_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/arpa/nameser.h
================================================
/*	$NetBSD: nameser.h,v 1.25 2009/04/12 17:07:34 christos Exp $	*/

/*
 * Portions Copyright (C) 2004, 2005, 2008, 2009  Internet Systems Consortium, Inc. ("ISC")
 * Portions Copyright (C) 1996-2003  Internet Software Consortium.
 *
 * Permission to use, copy, modify, and/or distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
 * AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 * PERFORMANCE OF THIS SOFTWARE.
 */

/*
 * Copyright (c) 1983, 1989, 1993
 *    The Regents of the University of California.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

/*
 *	Id: nameser.h,v 1.16 2009/03/03 01:52:48 each Exp
 */

#ifndef _ARPA_NAMESER_H_
#define _ARPA_NAMESER_H_

#define BIND_4_COMPAT

#include <sys/types.h>
#include <sys/cdefs.h>

/*
 * Revision information.  This is the release date in YYYYMMDD format.
 * It can change every day so the right thing to do with it is use it
 * in preprocessor commands such as "#if (__NAMESER > 19931104)".  Do not
 * compare for equality; rather, use it to determine whether your libbind.a
 * contains a new enough lib/nameser/ to support the feature you need.
 */

#define __NAMESER	20090302	/*%< New interface version stamp. */

/*
 * Define constants based on RFC0883, RFC1034, RFC 1035
 */
#define NS_PACKETSZ	512	/* default UDP packet size */
#define NS_MAXDNAME	1025	/* maximum domain name (presentation format)*/
#define NS_MAXMSG	65535	/* maximum message size */
#define NS_MAXCDNAME	255	/* maximum compressed domain name */
#define NS_MAXLABEL	63	/* maximum length of domain label */
#define NS_MAXLABELS	128	/* theoretical max #/labels per domain name */
#define NS_MAXNNAME	256	/* maximum uncompressed (binary) domain name*/
#define	NS_MAXPADDR	(sizeof "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff")
#define NS_HFIXEDSZ	12	/* #/bytes of fixed data in header */
#define NS_QFIXEDSZ	4	/* #/bytes of fixed data in query */
#define NS_RRFIXEDSZ	10	/* #/bytes of fixed data in r record */
#define NS_INT32SZ	4	/* #/bytes of data in a uint32_t */
#define NS_INT16SZ	2	/* #/bytes of data in a uint16_t */
#define NS_INT8SZ	1	/* #/bytes of data in a uint8_t */
#define NS_INADDRSZ	4	/* IPv4 T_A */
#define NS_IN6ADDRSZ	16	/* IPv6 T_AAAA */
#define NS_CMPRSFLGS	0xc0	/* Flag bits indicating name compression. */
#define NS_DEFAULTPORT	53	/* For both TCP and UDP. */

/*
 * These can be expanded with synonyms, just keep ns_parse.c:ns_parserecord()
 * in synch with it.
 */
typedef enum __ns_sect {
	ns_s_qd = 0,		/* Query: Question. */
	ns_s_zn = 0,		/* Update: Zone. */
	ns_s_an = 1,		/* Query: Answer. */
	ns_s_pr = 1,		/* Update: Prerequisites. */
	ns_s_ns = 2,		/* Query: Name servers. */
	ns_s_ud = 2,		/* Update: Update. */
	ns_s_ar = 3,		/* Query|Update: Additional records. */
	ns_s_max = 4
} ns_sect;

/*
 * Network name (compressed or not) type.  Equivilent to a pointer when used
 * in a function prototype.  Can be const'd.
 */
typedef u_char ns_nname[NS_MAXNNAME];
typedef const u_char *ns_nname_ct;
typedef u_char *ns_nname_t;

struct ns_namemap { ns_nname_ct base; int len; };
typedef struct ns_namemap *ns_namemap_t;
typedef const struct ns_namemap *ns_namemap_ct;

/*
 * This is a message handle.  It is caller allocated and has no dynamic data.
 * This structure is intended to be opaque to all but ns_parse.c, thus the
 * leading _'s on the member names.  Use the accessor functions, not the _'s.
 */
typedef struct __ns_msg {
	const u_char	*_msg, *_eom;
	uint16_t	_id, _flags, _counts[ns_s_max];
	const u_char	*_sections[ns_s_max];
	ns_sect		_sect;
	int		_rrnum;
	const u_char	*_msg_ptr;
} ns_msg;
/*
 * This is a newmsg handle, used when constructing new messages with
 * ns_newmsg_init, et al.
 */
struct ns_newmsg {
	ns_msg		msg;
	const u_char	*dnptrs[25];
	const u_char	**lastdnptr;
};
typedef struct ns_newmsg ns_newmsg;

/* Private data structure - do not use from outside library. */
struct _ns_flagdata {  int mask, shift;  };
extern const struct _ns_flagdata _ns_flagdata[];

/* Accessor macros - this is part of the public interface. */

#define ns_msg_id(handle) ((handle)._id + 0)
#define ns_msg_base(handle) ((handle)._msg + 0)
#define ns_msg_end(handle) ((handle)._eom + 0)
#define ns_msg_size(handle) ((size_t)((handle)._eom - (handle)._msg))
#define ns_msg_count(handle, section) ((handle)._counts[section] + 0)

/*
 * This is a parsed record.  It is caller allocated and has no dynamic data.
 */
typedef	struct __ns_rr {
	char		name[NS_MAXDNAME];
	uint16_t	type;
	uint16_t	rr_class;
	uint32_t	ttl;
	uint16_t	rdlength;
	const u_char *	rdata;
} ns_rr;

/*
 * Same thing, but using uncompressed network binary names, and real C types.
 */
typedef	struct __ns_rr2 {
	ns_nname	nname;
	size_t		nnamel;
	int		type;
	int		rr_class;
	u_int		ttl;
	int		rdlength;
	const u_char *	rdata;
} ns_rr2;
/* Accessor macros - this is part of the public interface. */
#define ns_rr_name(rr)	(((rr).name[0] != '\0') ? (rr).name : ".")
#define ns_rr_nname(rr)	((const ns_nname_t)(rr).nname)
#define ns_rr_nnamel(rr) ((rr).nnamel + 0)
#define ns_rr_type(rr)	((ns_type)((rr).type + 0))
#define ns_rr_class(rr)	((ns_class)((rr).rr_class + 0))
#define ns_rr_ttl(rr)	((u_long)(rr).ttl + 0)
#define ns_rr_rdlen(rr)	((size_t)(rr).rdlength + 0)
#define ns_rr_rdata(rr)	((rr).rdata + 0)

/*
 * These don't have to be in the same order as in the packet flags word,
 * and they can even overlap in some cases, but they will need to be kept
 * in synch with ns_parse.c:ns_flagdata[].
 */
typedef enum __ns_flag {
	ns_f_qr,		/* Question/Response. */
	ns_f_opcode,		/* Operation code. */
	ns_f_aa,		/* Authoritative Answer. */
	ns_f_tc,		/* Truncation occurred. */
	ns_f_rd,		/* Recursion Desired. */
	ns_f_ra,		/* Recursion Available. */
	ns_f_z,			/* MBZ. */
	ns_f_ad,		/* Authentic Data (DNSSEC). */
	ns_f_cd,		/* Checking Disabled (DNSSEC). */
	ns_f_rcode,		/* Response code. */
	ns_f_max
} ns_flag;

/*
 * Currently defined opcodes.
 */
typedef enum __ns_opcode {
	ns_o_query = 0,		/* Standard query. */
	ns_o_iquery = 1,	/* Inverse query (deprecated/unsupported). */
	ns_o_status = 2,	/* Name server status query (unsupported). */
				/* Opcode 3 is undefined/reserved. */
	ns_o_notify = 4,	/* Zone change notification. */
	ns_o_update = 5,	/* Zone update message. */
	ns_o_max = 6
} ns_opcode;

/*
 * Currently defined response codes.
 */
typedef	enum __ns_rcode {
	ns_r_noerror = 0,	/* No error occurred. */
	ns_r_formerr = 1,	/* Format error. */
	ns_r_servfail = 2,	/* Server failure. */
	ns_r_nxdomain = 3,	/* Name error. */
	ns_r_notimpl = 4,	/* Unimplemented. */
	ns_r_refused = 5,	/* Operation refused. */
	/* these are for BIND_UPDATE */
	ns_r_yxdomain = 6,	/* Name exists */
	ns_r_yxrrset = 7,	/* RRset exists */
	ns_r_nxrrset = 8,	/* RRset does not exist */
	ns_r_notauth = 9,	/* Not authoritative for zone */
	ns_r_notzone = 10,	/* Zone of record different from zone section */
	ns_r_max = 11,
	/* The following are EDNS extended rcodes */
	ns_r_badvers = 16,
	/* The following are TSIG errors */
	ns_r_badsig = 16,
	ns_r_badkey = 17,
	ns_r_badtime = 18
} ns_rcode;

/* BIND_UPDATE */
typedef enum __ns_update_operation {
	ns_uop_delete = 0,
	ns_uop_add = 1,
	ns_uop_max = 2
} ns_update_operation;

/*
 * This structure is used for TSIG authenticated messages
 */
struct ns_tsig_key {
        char name[NS_MAXDNAME], alg[NS_MAXDNAME];
        unsigned char *data;
        int len;
};
typedef struct ns_tsig_key ns_tsig_key;

/*
 * This structure is used for TSIG authenticated TCP messages
 */
struct ns_tcp_tsig_state {
	int counter;
	struct dst_key *key;
	void *ctx;
	unsigned char sig[NS_PACKETSZ];
	int siglen;
};
typedef struct ns_tcp_tsig_state ns_tcp_tsig_state;

#define NS_TSIG_FUDGE 300
#define NS_TSIG_TCP_COUNT 100
#define NS_TSIG_ALG_HMAC_MD5 "HMAC-MD5.SIG-ALG.REG.INT"

#define NS_TSIG_ERROR_NO_TSIG -10
#define NS_TSIG_ERROR_NO_SPACE -11
#define NS_TSIG_ERROR_FORMERR -12

/*
 * Currently defined type values for resources and queries.
 */
typedef enum __ns_type {
	ns_t_invalid = 0,	/* Cookie. */
	ns_t_a = 1,		/* Host address. */
	ns_t_ns = 2,		/* Authoritative server. */
	ns_t_md = 3,		/* Mail destination. */
	ns_t_mf = 4,		/* Mail forwarder. */
	ns_t_cname = 5,		/* Canonical name. */
	ns_t_soa = 6,		/* Start of authority zone. */
	ns_t_mb = 7,		/* Mailbox domain name. */
	ns_t_mg = 8,		/* Mail group member. */
	ns_t_mr = 9,		/* Mail rename name. */
	ns_t_null = 10,		/* Null resource record. */
	ns_t_wks = 11,		/* Well known service. */
	ns_t_ptr = 12,		/* Domain name pointer. */
	ns_t_hinfo = 13,	/* Host information. */
	ns_t_minfo = 14,	/* Mailbox information. */
	ns_t_mx = 15,		/* Mail routing information. */
	ns_t_txt = 16,		/* Text strings. */
	ns_t_rp = 17,		/* Responsible person. */
	ns_t_afsdb = 18,	/* AFS cell database. */
	ns_t_x25 = 19,		/* X_25 calling address. */
	ns_t_isdn = 20,		/* ISDN calling address. */
	ns_t_rt = 21,		/* Router. */
	ns_t_nsap = 22,		/* NSAP address. */
	ns_t_nsap_ptr = 23,	/* Reverse NSAP lookup (deprecated). */
	ns_t_sig = 24,		/* Security signature. */
	ns_t_key = 25,		/* Security key. */
	ns_t_px = 26,		/* X.400 mail mapping. */
	ns_t_gpos = 27,		/* Geographical position (withdrawn). */
	ns_t_aaaa = 28,		/* IPv6 Address. */
	ns_t_loc = 29,		/* Location Information. */
	ns_t_nxt = 30,		/* Next domain (security). */
	ns_t_eid = 31,		/* Endpoint identifier. */
	ns_t_nimloc = 32,	/* Nimrod Locator. */
	ns_t_srv = 33,		/* Server Selection. */
	ns_t_atma = 34,		/* ATM Address */
	ns_t_naptr = 35,	/* Naming Authority PoinTeR */
	ns_t_kx = 36,		/* Key Exchange */
	ns_t_cert = 37,		/* Certification record */
	ns_t_a6 = 38,		/* IPv6 address (experimental) */
	ns_t_dname = 39,	/* Non-terminal DNAME */
	ns_t_sink = 40,		/* Kitchen sink (experimentatl) */
	ns_t_opt = 41,		/* EDNS0 option (meta-RR) */
	ns_t_apl = 42,		/* Address prefix list (RFC 3123) */
	ns_t_ds = 43,		/* Delegation Signer */
	ns_t_sshfp = 44,	/* SSH Fingerprint */
	ns_t_ipseckey = 45,	/* IPSEC Key */
	ns_t_rrsig = 46,	/* RRset Signature */
	ns_t_nsec = 47,		/* Negative security */
	ns_t_dnskey = 48,	/* DNS Key */
	ns_t_dhcid = 49,	/* Dynamic host configuratin identifier */
	ns_t_nsec3 = 50,	/* Negative security type 3 */
	ns_t_nsec3param = 51,	/* Negative security type 3 parameters */
	ns_t_hip = 55,		/* Host Identity Protocol */
	ns_t_spf = 99,		/* Sender Policy Framework */
	ns_t_tkey = 249,	/* Transaction key */
	ns_t_tsig = 250,	/* Transaction signature. */
	ns_t_ixfr = 251,	/* Incremental zone transfer. */
	ns_t_axfr = 252,	/* Transfer zone of authority. */
	ns_t_mailb = 253,	/* Transfer mailbox records. */
	ns_t_maila = 254,	/* Transfer mail agent records. */
	ns_t_any = 255,		/* Wildcard match. */
	ns_t_zxfr = 256,	/* BIND-specific, nonstandard. */
	ns_t_dlv = 32769,	/* DNSSEC look-aside validatation. */
	ns_t_max = 65536
} ns_type;

/* Exclusively a QTYPE? (not also an RTYPE) */
#define	ns_t_qt_p(t) (ns_t_xfr_p(t) || (t) == ns_t_any || \
		      (t) == ns_t_mailb || (t) == ns_t_maila)
/* Some kind of meta-RR? (not a QTYPE, but also not an RTYPE) */
#define	ns_t_mrr_p(t) ((t) == ns_t_tsig || (t) == ns_t_opt)
/* Exclusively an RTYPE? (not also a QTYPE or a meta-RR) */
#define ns_t_rr_p(t) (!ns_t_qt_p(t) && !ns_t_mrr_p(t))
#define ns_t_udp_p(t) ((t) != ns_t_axfr && (t) != ns_t_zxfr)
#define ns_t_xfr_p(t) ((t) == ns_t_axfr || (t) == ns_t_ixfr || \
		       (t) == ns_t_zxfr)

/*
 * Values for class field
 */
typedef enum __ns_class {
	ns_c_invalid = 0,	/* Cookie. */
	ns_c_in = 1,		/* Internet. */
	ns_c_2 = 2,		/* unallocated/unsupported. */
	ns_c_chaos = 3,		/* MIT Chaos-net. */
	ns_c_hs = 4,		/* MIT Hesiod. */
	/* Query class values which do not appear in resource records */
	ns_c_none = 254,	/* for prereq. sections in update requests */
	ns_c_any = 255,		/* Wildcard match. */
	ns_c_max = 65536
} ns_class;

/* DNSSEC constants. */

typedef enum __ns_key_types {
	ns_kt_rsa = 1,		/* key type RSA/MD5 */
	ns_kt_dh  = 2,		/* Diffie Hellman */
	ns_kt_dsa = 3,		/* Digital Signature Standard (MANDATORY) */
	ns_kt_private = 254	/* Private key type starts with OID */
} ns_key_types;

typedef enum __ns_cert_types {
	cert_t_pkix = 1,	/* PKIX (X.509v3) */
	cert_t_spki = 2,	/* SPKI */
	cert_t_pgp  = 3,	/* PGP */
	cert_t_url  = 253,	/* URL private type */
	cert_t_oid  = 254	/* OID private type */
} ns_cert_types;

/* Flags field of the KEY RR rdata. */
#define	NS_KEY_TYPEMASK		0xC000	/* Mask for "type" bits */
#define	NS_KEY_TYPE_AUTH_CONF	0x0000	/* Key usable for both */
#define	NS_KEY_TYPE_CONF_ONLY	0x8000	/* Key usable for confidentiality */
#define	NS_KEY_TYPE_AUTH_ONLY	0x4000	/* Key usable for authentication */
#define	NS_KEY_TYPE_NO_KEY	0xC000	/* No key usable for either; no key */
/* The type bits can also be interpreted independently, as single bits: */
#define	NS_KEY_NO_AUTH		0x8000	/* Key unusable for authentication */
#define	NS_KEY_NO_CONF		0x4000	/* Key unusable for confidentiality */
#define	NS_KEY_RESERVED2	0x2000	/* Security is *mandatory* if bit=0 */
#define	NS_KEY_EXTENDED_FLAGS	0x1000	/* reserved - must be zero */
#define	NS_KEY_RESERVED4	0x0800  /* reserved - must be zero */
#define	NS_KEY_RESERVED5	0x0400  /* reserved - must be zero */
#define	NS_KEY_NAME_TYPE	0x0300	/* these bits determine the type */
#define	NS_KEY_NAME_USER	0x0000	/* key is assoc. with user */
#define	NS_KEY_NAME_ENTITY	0x0200	/* key is assoc. with entity eg host */
#define	NS_KEY_NAME_ZONE	0x0100	/* key is zone key */
#define	NS_KEY_NAME_RESERVED	0x0300	/* reserved meaning */
#define	NS_KEY_RESERVED8	0x0080  /* reserved - must be zero */
#define	NS_KEY_RESERVED9	0x0040  /* reserved - must be zero */
#define	NS_KEY_RESERVED10	0x0020  /* reserved - must be zero */
#define	NS_KEY_RESERVED11	0x0010  /* reserved - must be zero */
#define	NS_KEY_SIGNATORYMASK	0x000F	/* key can sign RR's of same name */
#define	NS_KEY_RESERVED_BITMASK ( NS_KEY_RESERVED2 | \
				  NS_KEY_RESERVED4 | \
				  NS_KEY_RESERVED5 | \
				  NS_KEY_RESERVED8 | \
				  NS_KEY_RESERVED9 | \
				  NS_KEY_RESERVED10 | \
				  NS_KEY_RESERVED11 )
#define NS_KEY_RESERVED_BITMASK2 0xFFFF /* no bits defined here */

/* The Algorithm field of the KEY and SIG RR's is an integer, {1..254} */
#define	NS_ALG_MD5RSA		1	/* MD5 with RSA */
#define	NS_ALG_DH               2	/* Diffie Hellman KEY */
#define	NS_ALG_DSA              3	/* DSA KEY */
#define	NS_ALG_DSS              NS_ALG_DSA
#define	NS_ALG_EXPIRE_ONLY	253	/* No alg, no security */
#define	NS_ALG_PRIVATE_OID	254	/* Key begins with OID giving alg */

/* Protocol values  */
/* value 0 is reserved */
#define NS_KEY_PROT_TLS         1
#define NS_KEY_PROT_EMAIL       2
#define NS_KEY_PROT_DNSSEC      3
#define NS_KEY_PROT_IPSEC       4
#define NS_KEY_PROT_ANY		255

/* Signatures */
#define	NS_MD5RSA_MIN_BITS	 512	/* Size of a mod or exp in bits */
#define	NS_MD5RSA_MAX_BITS	4096
	/* Total of binary mod and exp */
#define	NS_MD5RSA_MAX_BYTES	((NS_MD5RSA_MAX_BITS+7/8)*2+3)
	/* Max length of text sig block */
#define	NS_MD5RSA_MAX_BASE64	(((NS_MD5RSA_MAX_BYTES+2)/3)*4)
#define NS_MD5RSA_MIN_SIZE	((NS_MD5RSA_MIN_BITS+7)/8)
#define NS_MD5RSA_MAX_SIZE	((NS_MD5RSA_MAX_BITS+7)/8)

#define NS_DSA_SIG_SIZE         41
#define NS_DSA_MIN_SIZE         213
#define NS_DSA_MAX_BYTES        405

/* Offsets into SIG record rdata to find various values */
#define	NS_SIG_TYPE	0	/* Type flags */
#define	NS_SIG_ALG	2	/* Algorithm */
#define	NS_SIG_LABELS	3	/* How many labels in name */
#define	NS_SIG_OTTL	4	/* Original TTL */
#define	NS_SIG_EXPIR	8	/* Expiration time */
#define	NS_SIG_SIGNED	12	/* Signature time */
#define	NS_SIG_FOOT	16	/* Key footprint */
#define	NS_SIG_SIGNER	18	/* Domain name of who signed it */

/* How RR types are represented as bit-flags in NXT records */
#define	NS_NXT_BITS 8
#define	NS_NXT_BIT_SET(  n,p) (p[(n)/NS_NXT_BITS] |=  (0x80>>((n)%NS_NXT_BITS)))
#define	NS_NXT_BIT_CLEAR(n,p) (p[(n)/NS_NXT_BITS] &= ~(0x80>>((n)%NS_NXT_BITS)))
#define	NS_NXT_BIT_ISSET(n,p) (p[(n)/NS_NXT_BITS] &   (0x80>>((n)%NS_NXT_BITS)))
#define NS_NXT_MAX 127

/*
 * EDNS0 extended flags and option codes, host order.
 */
#define NS_OPT_DNSSEC_OK	0x8000U
#define NS_OPT_NSID             3

/*
 * Inline versions of get/put short/long.  Pointer is advanced.
 */
#define NS_GET16(s, cp) do { \
	const u_char *t_cp = (const u_char *)(cp); \
	(s) = ((uint16_t)t_cp[0] << 8) \
	    | ((uint16_t)t_cp[1]) \
	    ; \
	(cp) += NS_INT16SZ; \
} while (/*CONSTCOND*/0)

#define NS_GET32(l, cp) do { \
	const u_char *t_cp = (const u_char *)(cp); \
	(l) = ((uint32_t)t_cp[0] << 24) \
	    | ((uint32_t)t_cp[1] << 16) \
	    | ((uint32_t)t_cp[2] << 8) \
	    | ((uint32_t)t_cp[3]) \
	    ; \
	(cp) += NS_INT32SZ; \
} while (/*CONSTCOND*/0)

#define NS_PUT16(s, cp) do { \
	uint32_t t_s = (uint32_t)(s); \
	u_char *t_cp = (u_char *)(cp); \
	*t_cp++ = t_s >> 8; \
	*t_cp   = t_s; \
	(cp) += NS_INT16SZ; \
} while (/*CONSTCOND*/0)

#define NS_PUT32(l, cp) do { \
	uint32_t t_l = (uint32_t)(l); \
	u_char *t_cp = (u_char *)(cp); \
	*t_cp++ = t_l >> 24; \
	*t_cp++ = t_l >> 16; \
	*t_cp++ = t_l >> 8; \
	*t_cp   = t_l; \
	(cp) += NS_INT32SZ; \
} while (/*CONSTCOND*/0)

#if !defined(__LP64__)
/* Annoyingly, LP32 shipped with __ names. */
#define	ns_msg_getflag		__ns_msg_getflag
#define ns_get16		__ns_get16
#define ns_get32		__ns_get32
#define ns_put16		__ns_put16
#define ns_put32		__ns_put32
#define ns_initparse		__ns_initparse
#define ns_skiprr		__ns_skiprr
#define ns_parserr		__ns_parserr
#define ns_parserr2		__ns_parserr2
#define	ns_sprintrr		__ns_sprintrr
#define	ns_sprintrrf		__ns_sprintrrf
#define	ns_format_ttl		__ns_format_ttl
#define	ns_parse_ttl		__ns_parse_ttl
#define ns_datetosecs		__ns_datetosecs
#define	ns_name_ntol		__ns_name_ntol
#define	ns_name_ntop		__ns_name_ntop
#define	ns_name_pton		__ns_name_pton
#define	ns_name_pton2		__ns_name_pton2
#define	ns_name_unpack		__ns_name_unpack
#define	ns_name_unpack2		__ns_name_unpack2
#define	ns_name_pack		__ns_name_pack
#define	ns_name_compress	__ns_name_compress
#define	ns_name_uncompress	__ns_name_uncompress
#define	ns_name_skip		__ns_name_skip
#define	ns_name_rollback	__ns_name_rollback
#define	ns_name_length		__ns_name_length
#define	ns_name_eq		__ns_name_eq
#define	ns_name_owned		__ns_name_owned
#define	ns_name_map		__ns_name_map
#define	ns_name_labels		__ns_name_labels
#define	ns_sign			__ns_sign
#define	ns_sign2		__ns_sign2
#define	ns_sign_tcp		__ns_sign_tcp
#define	ns_sign_tcp2		__ns_sign_tcp2
#define	ns_sign_tcp_init	__ns_sign_tcp_init
#define ns_find_tsig		__ns_find_tsig
#define	ns_verify		__ns_verify
#define	ns_verify_tcp		__ns_verify_tcp
#define	ns_verify_tcp_init	__ns_verify_tcp_init
#define	ns_samedomain		__ns_samedomain
#define	ns_subdomain		__ns_subdomain
#define	ns_makecanon		__ns_makecanon
#define	ns_samename		__ns_samename
#endif

__BEGIN_DECLS
int		ns_msg_getflag(ns_msg, int) __LIBC_ABI_PUBLIC__;
uint16_t	ns_get16(const u_char *) __LIBC_ABI_PUBLIC__;
uint32_t	ns_get32(const u_char *) __LIBC_ABI_PUBLIC__;
void		ns_put16(uint16_t, u_char *) __LIBC_ABI_PUBLIC__;
void		ns_put32(uint32_t, u_char *) __LIBC_ABI_PUBLIC__;
int		ns_initparse(const u_char *, int, ns_msg *) __LIBC_ABI_PUBLIC__;
int		ns_skiprr(const u_char *, const u_char *, ns_sect, int) __LIBC_ABI_PUBLIC__;
int		ns_parserr(ns_msg *, ns_sect, int, ns_rr *) __LIBC_ABI_PUBLIC__;
int		ns_parserr2(ns_msg *, ns_sect, int, ns_rr2 *) __LIBC_HIDDEN__;
int		ns_sprintrr(const ns_msg *, const ns_rr *,
				 const char *, const char *, char *, size_t) __LIBC_ABI_PUBLIC__;
int		ns_sprintrrf(const u_char *, size_t, const char *,
				  ns_class, ns_type, u_long, const u_char *,
				  size_t, const char *, const char *,
				  char *, size_t) __LIBC_ABI_PUBLIC__;
int		ns_format_ttl(u_long, char *, size_t) __LIBC_ABI_PUBLIC__;
int		ns_parse_ttl(const char *, u_long *) __LIBC_ABI_PUBLIC__;
uint32_t	ns_datetosecs(const char *cp, int *errp) __LIBC_ABI_PUBLIC__;
int		ns_name_ntol(const u_char *, u_char *, size_t) __LIBC_ABI_PUBLIC__;
int		ns_name_ntop(const u_char *, char *, size_t) __LIBC_ABI_PUBLIC__;
int		ns_name_pton(const char *, u_char *, size_t) __LIBC_ABI_PUBLIC__;
int		ns_name_pton2(const char *, u_char *, size_t, size_t *) __LIBC_HIDDEN__;
int		ns_name_unpack(const u_char *, const u_char *,
				    const u_char *, u_char *, size_t) __LIBC_ABI_PUBLIC__;
int		ns_name_unpack2(const u_char *, const u_char *,
				     const u_char *, u_char *, size_t,
				     size_t *) __LIBC_HIDDEN__;
int		ns_name_pack(const u_char *, u_char *, int,
				  const u_char **, const u_char **) __LIBC_ABI_PUBLIC__;
int		ns_name_uncompress(const u_char *, const u_char *,
					const u_char *, char *, size_t) __LIBC_ABI_PUBLIC__;
int		ns_name_compress(const char *, u_char *, size_t,
				      const u_char **, const u_char **) __LIBC_ABI_PUBLIC__;
int		ns_name_skip(const u_char **, const u_char *) __LIBC_ABI_PUBLIC__;
void		ns_name_rollback(const u_char *, const u_char **,
				      const u_char **) __LIBC_ABI_PUBLIC__;
int		ns_sign(u_char *, int *, int, int, void *,
			     const u_char *, int, u_char *, int *, time_t) __LIBC_ABI_PUBLIC__;
int		ns_sign2(u_char *, int *, int, int, void *,
			      const u_char *, int, u_char *, int *, time_t,
			      u_char **, u_char **) __LIBC_ABI_PUBLIC__;
ssize_t		ns_name_length(ns_nname_ct, size_t) __LIBC_HIDDEN__;
int		ns_name_eq(ns_nname_ct, size_t, ns_nname_ct, size_t) __LIBC_HIDDEN__;
int		ns_name_owned(ns_namemap_ct, int, ns_namemap_ct, int) __LIBC_HIDDEN__;
int		ns_name_map(ns_nname_ct, size_t, ns_namemap_t, int) __LIBC_HIDDEN__;
int		ns_name_labels(ns_nname_ct, size_t) __LIBC_HIDDEN__;
int		ns_sign_tcp(u_char *, int *, int, int,
				 ns_tcp_tsig_state *, int) __LIBC_ABI_PUBLIC__;
int		ns_sign_tcp2(u_char *, int *, int, int,
				  ns_tcp_tsig_state *, int,
				  u_char **, u_char **) __LIBC_ABI_PUBLIC__;
int		ns_sign_tcp_init(void *, const u_char *, int,
					ns_tcp_tsig_state *) __LIBC_ABI_PUBLIC__;
u_char		*ns_find_tsig(u_char *, u_char *) __LIBC_ABI_PUBLIC__;
int		ns_verify(u_char *, int *, void *,
			       const u_char *, int, u_char *, int *,
			       time_t *, int) __LIBC_ABI_PUBLIC__;
int		ns_verify_tcp(u_char *, int *, ns_tcp_tsig_state *, int);
int		ns_verify_tcp_init(void *, const u_char *, int,
					ns_tcp_tsig_state *) __LIBC_ABI_PUBLIC__;
int		ns_samedomain(const char *, const char *) __LIBC_ABI_PUBLIC__;
int		ns_subdomain(const char *, const char *) __LIBC_ABI_PUBLIC__;
int		ns_makecanon(const char *, char *, size_t) __LIBC_ABI_PUBLIC__;
int		ns_samename(const char *, const char *) __LIBC_ABI_PUBLIC__;
__END_DECLS

#ifdef BIND_4_COMPAT
#include <arpa/nameser_compat.h>
#endif

#endif /* !_ARPA_NAMESER_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/arpa/nameser_compat.h
================================================
/*	$NetBSD: nameser_compat.h,v 1.1.1.2 2004/11/07 01:28:27 christos Exp $	*/

/* Copyright (c) 1983, 1989
 *    The Regents of the University of California.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. All advertising materials mentioning features or use of this software
 *    must display the following acknowledgement:
 * 	This product includes software developed by the University of
 * 	California, Berkeley and its contributors.
 * 4. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

/*
 *      from nameser.h	8.1 (Berkeley) 6/2/93
 *	Id: nameser_compat.h,v 1.8 2006/05/19 02:33:40 marka Exp
 */

#ifndef _ARPA_NAMESER_COMPAT_
#define	_ARPA_NAMESER_COMPAT_

#define	__BIND		19950621	/* (DEAD) interface version stamp. */

#include <endian.h>

/*
 * Structure for query header.  The order of the fields is machine- and
 * compiler-dependent, depending on the byte/bit order and the layout
 * of bit fields.  We use bit fields only in int variables, as this
 * is all ANSI requires.  This requires a somewhat confusing rearrangement.
 */

typedef struct {
	unsigned	id :16;		/* query identification number */
#if BYTE_ORDER == BIG_ENDIAN
			/* fields in third byte */
	unsigned	qr: 1;		/* response flag */
	unsigned	opcode: 4;	/* purpose of message */
	unsigned	aa: 1;		/* authoritive answer */
	unsigned	tc: 1;		/* truncated message */
	unsigned	rd: 1;		/* recursion desired */
			/* fields in fourth byte */
	unsigned	ra: 1;		/* recursion available */
	unsigned	unused :1;	/* unused bits (MBZ as of 4.9.3a3) */
	unsigned	ad: 1;		/* authentic data from named */
	unsigned	cd: 1;		/* checking disabled by resolver */
	unsigned	rcode :4;	/* response code */
#endif
#if BYTE_ORDER == LITTLE_ENDIAN || BYTE_ORDER == PDP_ENDIAN
			/* fields in third byte */
	unsigned	rd :1;		/* recursion desired */
	unsigned	tc :1;		/* truncated message */
	unsigned	aa :1;		/* authoritive answer */
	unsigned	opcode :4;	/* purpose of message */
	unsigned	qr :1;		/* response flag */
			/* fields in fourth byte */
	unsigned	rcode :4;	/* response code */
	unsigned	cd: 1;		/* checking disabled by resolver */
	unsigned	ad: 1;		/* authentic data from named */
	unsigned	unused :1;	/* unused bits (MBZ as of 4.9.3a3) */
	unsigned	ra :1;		/* recursion available */
#endif
			/* remaining bytes */
	unsigned	qdcount :16;	/* number of question entries */
	unsigned	ancount :16;	/* number of answer entries */
	unsigned	nscount :16;	/* number of authority entries */
	unsigned	arcount :16;	/* number of resource entries */
} HEADER;

#define PACKETSZ	NS_PACKETSZ
#define MAXDNAME	NS_MAXDNAME
#define MAXCDNAME	NS_MAXCDNAME
#define MAXLABEL	NS_MAXLABEL
#define	HFIXEDSZ	NS_HFIXEDSZ
#define QFIXEDSZ	NS_QFIXEDSZ
#define RRFIXEDSZ	NS_RRFIXEDSZ
#define	INT32SZ		NS_INT32SZ
#define	INT16SZ		NS_INT16SZ
#define	INT8SZ		NS_INT8SZ
#define	INADDRSZ	NS_INADDRSZ
#define	IN6ADDRSZ	NS_IN6ADDRSZ
#define	INDIR_MASK	NS_CMPRSFLGS
#define NAMESERVER_PORT	NS_DEFAULTPORT

#define S_ZONE		ns_s_zn
#define S_PREREQ	ns_s_pr
#define S_UPDATE	ns_s_ud
#define S_ADDT		ns_s_ar

#define QUERY		ns_o_query
#define IQUERY		ns_o_iquery
#define STATUS		ns_o_status
#define	NS_NOTIFY_OP	ns_o_notify
#define	NS_UPDATE_OP	ns_o_update

#define NOERROR		ns_r_noerror
#define FORMERR		ns_r_formerr
#define SERVFAIL	ns_r_servfail
#define NXDOMAIN	ns_r_nxdomain
#define NOTIMP		ns_r_notimpl
#define REFUSED		ns_r_refused
#define YXDOMAIN	ns_r_yxdomain
#define YXRRSET		ns_r_yxrrset
#define NXRRSET		ns_r_nxrrset
#define NOTAUTH		ns_r_notauth
#define NOTZONE		ns_r_notzone
/*#define BADSIG		ns_r_badsig*/
/*#define BADKEY		ns_r_badkey*/
/*#define BADTIME		ns_r_badtime*/


#define DELETE		ns_uop_delete
#define ADD		ns_uop_add

#define T_A		ns_t_a
#define T_NS		ns_t_ns
#define T_MD		ns_t_md
#define T_MF		ns_t_mf
#define T_CNAME		ns_t_cname
#define T_SOA		ns_t_soa
#define T_MB		ns_t_mb
#define T_MG		ns_t_mg
#define T_MR		ns_t_mr
#define T_NULL		ns_t_null
#define T_WKS		ns_t_wks
#define T_PTR		ns_t_ptr
#define T_HINFO		ns_t_hinfo
#define T_MINFO		ns_t_minfo
#define T_MX		ns_t_mx
#define T_TXT		ns_t_txt
#define	T_RP		ns_t_rp
#define T_AFSDB		ns_t_afsdb
#define T_X25		ns_t_x25
#define T_ISDN		ns_t_isdn
#define T_RT		ns_t_rt
#define T_NSAP		ns_t_nsap
#define T_NSAP_PTR	ns_t_nsap_ptr
#define	T_SIG		ns_t_sig
#define	T_KEY		ns_t_key
#define	T_PX		ns_t_px
#define	T_GPOS		ns_t_gpos
#define	T_AAAA		ns_t_aaaa
#define	T_LOC		ns_t_loc
#define	T_NXT		ns_t_nxt
#define	T_EID		ns_t_eid
#define	T_NIMLOC	ns_t_nimloc
#define	T_SRV		ns_t_srv
#define T_ATMA		ns_t_atma
#define T_NAPTR		ns_t_naptr
#define T_A6		ns_t_a6
#define	T_TSIG		ns_t_tsig
#define	T_IXFR		ns_t_ixfr
#define T_AXFR		ns_t_axfr
#define T_MAILB		ns_t_mailb
#define T_MAILA		ns_t_maila
#define T_ANY		ns_t_any

#define C_IN		ns_c_in
#define C_CHAOS		ns_c_chaos
#define C_HS		ns_c_hs
/* BIND_UPDATE */
#define C_NONE		ns_c_none
#define C_ANY		ns_c_any

#define	GETSHORT		NS_GET16
#define	GETLONG			NS_GET32
#define	PUTSHORT		NS_PUT16
#define	PUTLONG			NS_PUT32

#endif /* _ARPA_NAMESER_COMPAT_ */


================================================
FILE: atlas-aapt/bionic/libc/include/arpa/telnet.h
================================================
/*
 * Copyright (c) 1983, 1993
 *	The Regents of the University of California.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 4. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 *	@(#)telnet.h	8.2 (Berkeley) 12/15/93
 */

#ifndef _ARPA_TELNET_H
#define	_ARPA_TELNET_H 1

/*
 * Definitions for the TELNET protocol.
 */
#define	IAC	255		/* interpret as command: */
#define	DONT	254		/* you are not to use option */
#define	DO	253		/* please, you use option */
#define	WONT	252		/* I won't use option */
#define	WILL	251		/* I will use option */
#define	SB	250		/* interpret as subnegotiation */
#define	GA	249		/* you may reverse the line */
#define	EL	248		/* erase the current line */
#define	EC	247		/* erase the current character */
#define	AYT	246		/* are you there */
#define	AO	245		/* abort output--but let prog finish */
#define	IP	244		/* interrupt process--permanently */
#define	BREAK	243		/* break */
#define	DM	242		/* data mark--for connect. cleaning */
#define	NOP	241		/* nop */
#define	SE	240		/* end sub negotiation */
#define EOR     239             /* end of record (transparent mode) */
#define	ABORT	238		/* Abort process */
#define	SUSP	237		/* Suspend process */
#define	xEOF	236		/* End of file: EOF is already used... */

#define SYNCH	242		/* for telfunc calls */

#ifdef TELCMDS
char *telcmds[] = {
	"EOF", "SUSP", "ABORT", "EOR",
	"SE", "NOP", "DMARK", "BRK", "IP", "AO", "AYT", "EC",
	"EL", "GA", "SB", "WILL", "WONT", "DO", "DONT", "IAC", 0,
};
#else
extern char *telcmds[];
#endif

#define	TELCMD_FIRST	xEOF
#define	TELCMD_LAST	IAC
#define	TELCMD_OK(x)	((unsigned int)(x) <= TELCMD_LAST && \
			 (unsigned int)(x) >= TELCMD_FIRST)
#define	TELCMD(x)	telcmds[(x)-TELCMD_FIRST]

/* telnet options */
#define TELOPT_BINARY	0	/* 8-bit data path */
#define TELOPT_ECHO	1	/* echo */
#define	TELOPT_RCP	2	/* prepare to reconnect */
#define	TELOPT_SGA	3	/* suppress go ahead */
#define	TELOPT_NAMS	4	/* approximate message size */
#define	TELOPT_STATUS	5	/* give status */
#define	TELOPT_TM	6	/* timing mark */
#define	TELOPT_RCTE	7	/* remote controlled transmission and echo */
#define TELOPT_NAOL 	8	/* negotiate about output line width */
#define TELOPT_NAOP 	9	/* negotiate about output page size */
#define TELOPT_NAOCRD	10	/* negotiate about CR disposition */
#define TELOPT_NAOHTS	11	/* negotiate about horizontal tabstops */
#define TELOPT_NAOHTD	12	/* negotiate about horizontal tab disposition */
#define TELOPT_NAOFFD	13	/* negotiate about formfeed disposition */
#define TELOPT_NAOVTS	14	/* negotiate about vertical tab stops */
#define TELOPT_NAOVTD	15	/* negotiate about vertical tab disposition */
#define TELOPT_NAOLFD	16	/* negotiate about output LF disposition */
#define TELOPT_XASCII	17	/* extended ascii character set */
#define	TELOPT_LOGOUT	18	/* force logout */
#define	TELOPT_BM	19	/* byte macro */
#define	TELOPT_DET	20	/* data entry terminal */
#define	TELOPT_SUPDUP	21	/* supdup protocol */
#define	TELOPT_SUPDUPOUTPUT 22	/* supdup output */
#define	TELOPT_SNDLOC	23	/* send location */
#define	TELOPT_TTYPE	24	/* terminal type */
#define	TELOPT_EOR	25	/* end or record */
#define	TELOPT_TUID	26	/* TACACS user identification */
#define	TELOPT_OUTMRK	27	/* output marking */
#define	TELOPT_TTYLOC	28	/* terminal location number */
#define	TELOPT_3270REGIME 29	/* 3270 regime */
#define	TELOPT_X3PAD	30	/* X.3 PAD */
#define	TELOPT_NAWS	31	/* window size */
#define	TELOPT_TSPEED	32	/* terminal speed */
#define	TELOPT_LFLOW	33	/* remote flow control */
#define TELOPT_LINEMODE	34	/* Linemode option */
#define TELOPT_XDISPLOC	35	/* X Display Location */
#define TELOPT_OLD_ENVIRON 36	/* Old - Environment variables */
#define	TELOPT_AUTHENTICATION 37/* Authenticate */
#define	TELOPT_ENCRYPT	38	/* Encryption option */
#define TELOPT_NEW_ENVIRON 39	/* New - Environment variables */
#define	TELOPT_EXOPL	255	/* extended-options-list */


#define	NTELOPTS	(1+TELOPT_NEW_ENVIRON)
#ifdef TELOPTS
const char *telopts[NTELOPTS+1] = {
	"BINARY", "ECHO", "RCP", "SUPPRESS GO AHEAD", "NAME",
	"STATUS", "TIMING MARK", "RCTE", "NAOL", "NAOP",
	"NAOCRD", "NAOHTS", "NAOHTD", "NAOFFD", "NAOVTS",
	"NAOVTD", "NAOLFD", "EXTEND ASCII", "LOGOUT", "BYTE MACRO",
	"DATA ENTRY TERMINAL", "SUPDUP", "SUPDUP OUTPUT",
	"SEND LOCATION", "TERMINAL TYPE", "END OF RECORD",
	"TACACS UID", "OUTPUT MARKING", "TTYLOC",
	"3270 REGIME", "X.3 PAD", "NAWS", "TSPEED", "LFLOW",
	"LINEMODE", "XDISPLOC", "OLD-ENVIRON", "AUTHENTICATION",
	"ENCRYPT", "NEW-ENVIRON",
	0,
};
#define	TELOPT_FIRST	TELOPT_BINARY
#define	TELOPT_LAST	TELOPT_NEW_ENVIRON
#define	TELOPT_OK(x)	((unsigned int)(x) <= TELOPT_LAST)
#define	TELOPT(x)	telopts[(x)-TELOPT_FIRST]
#endif

/* sub-option qualifiers */
#define	TELQUAL_IS	0	/* option is... */
#define	TELQUAL_SEND	1	/* send option */
#define	TELQUAL_INFO	2	/* ENVIRON: informational version of IS */
#define	TELQUAL_REPLY	2	/* AUTHENTICATION: client version of IS */
#define	TELQUAL_NAME	3	/* AUTHENTICATION: client version of IS */

#define	LFLOW_OFF		0	/* Disable remote flow control */
#define	LFLOW_ON		1	/* Enable remote flow control */
#define	LFLOW_RESTART_ANY	2	/* Restart output on any char */
#define	LFLOW_RESTART_XON	3	/* Restart output only on XON */

/*
 * LINEMODE suboptions
 */

#define	LM_MODE		1
#define	LM_FORWARDMASK	2
#define	LM_SLC		3

#define	MODE_EDIT	0x01
#define	MODE_TRAPSIG	0x02
#define	MODE_ACK	0x04
#define MODE_SOFT_TAB	0x08
#define MODE_LIT_ECHO	0x10

#define	MODE_MASK	0x1f

/* Not part of protocol, but needed to simplify things... */
#define MODE_FLOW		0x0100
#define MODE_ECHO		0x0200
#define MODE_INBIN		0x0400
#define MODE_OUTBIN		0x0800
#define MODE_FORCE		0x1000

#define	SLC_SYNCH	1
#define	SLC_BRK		2
#define	SLC_IP		3
#define	SLC_AO		4
#define	SLC_AYT		5
#define	SLC_EOR		6
#define	SLC_ABORT	7
#define	SLC_EOF		8
#define	SLC_SUSP	9
#define	SLC_EC		10
#define	SLC_EL		11
#define	SLC_EW		12
#define	SLC_RP		13
#define	SLC_LNEXT	14
#define	SLC_XON		15
#define	SLC_XOFF	16
#define	SLC_FORW1	17
#define	SLC_FORW2	18

#define	NSLC		18

/*
 * For backwards compatibility, we define SLC_NAMES to be the
 * list of names if SLC_NAMES is not defined.
 */
#define	SLC_NAMELIST	"0", "SYNCH", "BRK", "IP", "AO", "AYT", "EOR", \
			"ABORT", "EOF", "SUSP", "EC", "EL", "EW", "RP", \
			"LNEXT", "XON", "XOFF", "FORW1", "FORW2", 0,
#ifdef	SLC_NAMES
const char *slc_names[] = {
	SLC_NAMELIST
};
#else
extern char *slc_names[];
#define	SLC_NAMES SLC_NAMELIST
#endif

#define	SLC_NAME_OK(x)	((unsigned int)(x) <= NSLC)
#define SLC_NAME(x)	slc_names[x]

#define	SLC_NOSUPPORT	0
#define	SLC_CANTCHANGE	1
#define	SLC_VARIABLE	2
#define	SLC_DEFAULT	3
#define	SLC_LEVELBITS	0x03

#define	SLC_FUNC	0
#define	SLC_FLAGS	1
#define	SLC_VALUE	2

#define	SLC_ACK		0x80
#define	SLC_FLUSHIN	0x40
#define	SLC_FLUSHOUT	0x20

#define	OLD_ENV_VAR	1
#define	OLD_ENV_VALUE	0
#define	NEW_ENV_VAR	0
#define	NEW_ENV_VALUE	1
#define	ENV_ESC		2
#define ENV_USERVAR	3

/*
 * AUTHENTICATION suboptions
 */

/*
 * Who is authenticating who ...
 */
#define	AUTH_WHO_CLIENT		0	/* Client authenticating server */
#define	AUTH_WHO_SERVER		1	/* Server authenticating client */
#define	AUTH_WHO_MASK		1

/*
 * amount of authentication done
 */
#define	AUTH_HOW_ONE_WAY	0
#define	AUTH_HOW_MUTUAL		2
#define	AUTH_HOW_MASK		2

#define	AUTHTYPE_NULL		0
#define	AUTHTYPE_KERBEROS_V4	1
#define	AUTHTYPE_KERBEROS_V5	2
#define	AUTHTYPE_SPX		3
#define	AUTHTYPE_MINK		4
#define	AUTHTYPE_CNT		5

#define	AUTHTYPE_TEST		99

#ifdef	AUTH_NAMES
const char *authtype_names[] = {
	"NULL", "KERBEROS_V4", "KERBEROS_V5", "SPX", "MINK", 0,
};
#else
extern char *authtype_names[];
#endif

#define	AUTHTYPE_NAME_OK(x)	((unsigned int)(x) < AUTHTYPE_CNT)
#define	AUTHTYPE_NAME(x)	authtype_names[x]

/*
 * ENCRYPTion suboptions
 */
#define	ENCRYPT_IS		0	/* I pick encryption type ... */
#define	ENCRYPT_SUPPORT		1	/* I support encryption types ... */
#define	ENCRYPT_REPLY		2	/* Initial setup response */
#define	ENCRYPT_START		3	/* Am starting to send encrypted */
#define	ENCRYPT_END		4	/* Am ending encrypted */
#define	ENCRYPT_REQSTART	5	/* Request you start encrypting */
#define	ENCRYPT_REQEND		6	/* Request you send encrypting */
#define	ENCRYPT_ENC_KEYID	7
#define	ENCRYPT_DEC_KEYID	8
#define	ENCRYPT_CNT		9

#define	ENCTYPE_ANY		0
#define	ENCTYPE_DES_CFB64	1
#define	ENCTYPE_DES_OFB64	2
#define	ENCTYPE_CNT		3

#ifdef	ENCRYPT_NAMES
const char *encrypt_names[] = {
	"IS", "SUPPORT", "REPLY", "START", "END",
	"REQUEST-START", "REQUEST-END", "ENC-KEYID", "DEC-KEYID",
	0,
};
const char *enctype_names[] = {
	"ANY", "DES_CFB64",  "DES_OFB64",  0,
};
#else
extern const char *encrypt_names[];
extern const char *enctype_names[];
#endif


#define	ENCRYPT_NAME_OK(x)	((unsigned int)(x) < ENCRYPT_CNT)
#define	ENCRYPT_NAME(x)		encrypt_names[x]

#define	ENCTYPE_NAME_OK(x)	((unsigned int)(x) < ENCTYPE_CNT)
#define	ENCTYPE_NAME(x)		enctype_names[x]

#endif /* arpa/telnet.h */


================================================
FILE: atlas-aapt/bionic/libc/include/assert.h
================================================
/*	$OpenBSD: assert.h,v 1.12 2006/01/31 10:53:51 hshoexer Exp $	*/
/*	$NetBSD: assert.h,v 1.6 1994/10/26 00:55:44 cgd Exp $	*/

/*-
 * Copyright (c) 1992, 1993
 *	The Regents of the University of California.  All rights reserved.
 * (c) UNIX System Laboratories, Inc.
 * All or some portions of this file are derived from material licensed
 * to the University of California by American Telephone and Telegraph
 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
 * the permission of UNIX System Laboratories, Inc.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 *	@(#)assert.h	8.2 (Berkeley) 1/21/94
 */

/*
 * Unlike other ANSI header files, <assert.h> may usefully be included
 * multiple times, with and without NDEBUG defined.
 */

#include <sys/cdefs.h>

#undef assert
#undef _assert

#ifdef NDEBUG
# define	assert(e)	((void)0)
# define	_assert(e)	((void)0)
#else
# define	_assert(e)	assert(e)
# if __ISO_C_VISIBLE >= 1999
#  define	assert(e)	((e) ? (void)0 : __assert2(__FILE__, __LINE__, __func__, #e))
# else
#  define	assert(e)	((e) ? (void)0 : __assert(__FILE__, __LINE__, #e))
# endif
#endif

__BEGIN_DECLS
__dead void __assert(const char *, int, const char *) __noreturn;
__dead void __assert2(const char *, int, const char *, const char *) __noreturn;
__END_DECLS


================================================
FILE: atlas-aapt/bionic/libc/include/bits/lockf.h
================================================
/*
 * Copyright (C) 2016 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _BITS_LOCKF_H_
#define _BITS_LOCKF_H_

#include <sys/cdefs.h>

#define F_ULOCK 0
#define F_LOCK 1
#define F_TLOCK 2
#define F_TEST 3

__BEGIN_DECLS

#if defined(__USE_FILE_OFFSET64)
int lockf(int, int, off_t) __RENAME(lockf64);
#else
int lockf(int, int, off_t);
#endif
int lockf64(int, int, off64_t);

__END_DECLS

#endif


================================================
FILE: atlas-aapt/bionic/libc/include/bits/posix_limits.h
================================================
/*
 * Copyright (C) 2014 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _BITS_POSIX_LIMITS_H_
#define _BITS_POSIX_LIMITS_H_


/* Any constant values here other than -1 or 200809L are explicitly specified by POSIX.1-2008. */
/* Keep it sorted. */
#define _POSIX_ADVISORY_INFO        200809L
#define _POSIX_AIO_LISTIO_MAX       2
#define _POSIX_AIO_MAX              1
#define _POSIX_ARG_MAX              4096
#define _POSIX_ASYNCHRONOUS_IO      -1  /* not implemented */
#define _POSIX_BARRIERS             -1  /* not implemented */
#define _POSIX_CHILD_MAX            25
#define _POSIX_CHOWN_RESTRICTED     1  /* yes, chown requires appropriate privileges */
#define _POSIX_CLOCK_SELECTION      200809L
#define _POSIX_CPUTIME              0  /* Use sysconf to detect support at runtime. */
#define _POSIX_DELAYTIMER_MAX       32
#define _POSIX_FSYNC                200809L  /* fdatasync() supported */
#define _POSIX_HOST_NAME_MAX        255
#define _POSIX_IPV6                 200809L
#define _POSIX_JOB_CONTROL          1  /* job control is a Linux feature */
#define _POSIX_LINK_MAX             8
#define _POSIX_LOGIN_NAME_MAX       9  /* includes trailing NUL */
#define _POSIX_MAPPED_FILES         200809L  /* mmap-ed files supported */
#define _POSIX_MAX_CANON            255
#define _POSIX_MAX_INPUT            255
#define _POSIX_MEMLOCK              200809L
#define _POSIX_MEMLOCK_RANGE        200809L
#define _POSIX_MEMORY_PROTECTION    200809L
#define _POSIX_MESSAGE_PASSING      -1  /* not implemented */
#define _POSIX_MONOTONIC_CLOCK      0  /* the monotonic clock may be available; ask sysconf */
#define _POSIX_MQ_OPEN_MAX          8
#define _POSIX_MQ_PRIO_MAX          32
#define _POSIX_NAME_MAX             14
#define _POSIX_NGROUPS_MAX          8
#define _POSIX_NO_TRUNC             1  /* very long pathnames generate an error */
#define _POSIX_OPEN_MAX             20
#define _POSIX_PATH_MAX             256
#define _POSIX_PIPE_BUF             512
#define _POSIX_PRIORITY_SCHEDULING  200809L  /* priority scheduling is a Linux feature */
#define _POSIX_PRIORITIZED_IO       -1  /* not implemented */
#define _POSIX_RAW_SOCKETS          200809L
#define _POSIX_READER_WRITER_LOCKS  200809L
#define _POSIX_REALTIME_SIGNALS     200809L
#define _POSIX_REGEXP               1
#define _POSIX_RE_DUP_MAX           255
#define _POSIX_SAVED_IDS            1  /* saved user ids is a Linux feature */
#define _POSIX_SEMAPHORES           200809L
#define _POSIX_SEM_NSEMS_MAX        256
#define _POSIX_SEM_VALUE_MAX        32767
#define _POSIX_SHARED_MEMORY_OBJECTS  -1  /* shm_open()/shm_unlink() not implemented */
#define _POSIX_SHELL                1   /* system() supported */
#define _POSIX_SIGQUEUE_MAX         32
#define _POSIX_SPAWN                -1  /* not implemented */
#define _POSIX_SPIN_LOCKS           -1  /* not implemented */
#define _POSIX_SPORADIC_SERVER      -1  /* not implemented */
#define _POSIX_SSIZE_MAX            32767
#define _POSIX_STREAM_MAX           8
#define _POSIX_SYMLINK_MAX          255
#define _POSIX_SYMLOOP_MAX          8
#define _POSIX_SYNCHRONIZED_IO      200809L  /* synchronized i/o supported */
#define _POSIX_THREADS              200809L  /* we support threads */
#define _POSIX_THREAD_ATTR_STACKADDR  200809L
#define _POSIX_THREAD_ATTR_STACKSIZE  200809L
#define _POSIX_THREAD_CPUTIME       0  /* Use sysconf to detect support at runtime. */
#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4
#define _POSIX_THREAD_KEYS_MAX      128
#define _POSIX_THREAD_PRIORITY_SCHEDULING 200809L
#define _POSIX_THREAD_PRIO_INHERIT  200809L  /* linux feature */
#define _POSIX_THREAD_PRIO_PROTECT  200809L  /* linux feature */
#define _POSIX_THREAD_PROCESS_SHARED  -1  /* not implemented */
#define _POSIX_THREAD_ROBUST_PRIO_INHERIT -1  /* not implemented */
#define _POSIX_THREAD_ROBUST_PRIO_PROTECT -1  /* not implemented */
#define _POSIX_THREAD_SAFE_FUNCTIONS 200809L
#define _POSIX_THREAD_SPORADIC_SERVER -1  /* not implemented */
#define _POSIX_THREAD_THREADS_MAX   64
#define _POSIX_TIMEOUTS             200809L
#define _POSIX_TIMERS               200809L  /* Posix timers are supported */
#define _POSIX_TIMER_MAX            32
#define _POSIX_TRACE                -1  /* not implemented */
#define _POSIX_TRACE_EVENT_FILTER   -1  /* not implemented */
#define _POSIX_TRACE_INHERIT        -1  /* not implemented */
#define _POSIX_TRACE_LOG            -1  /* not implemented */
#define _POSIX_TRACE_NAME_MAX       8
#define _POSIX_TRACE_SYS_MAX        8
#define _POSIX_TRACE_USER_EVENT_MAX 32
#define _POSIX_TTY_NAME_MAX         9  /* includes trailing NUL */
#define _POSIX_TYPED_MEMORY_OBJECTS -1  /* not implemented */
#define _POSIX_TZNAME_MAX           6
#define _POSIX_VDISABLE             '\0'

#if defined(__LP64__)
#define _POSIX_V7_ILP32_OFF32       -1
#define _POSIX_V7_ILP32_OFFBIG      -1
#define _POSIX_V7_LP64_OFF64         1
#define _POSIX_V7_LPBIG_OFFBIG       1
#else
#define _POSIX_V7_ILP32_OFF32        1
#define _POSIX_V7_ILP32_OFFBIG      -1
#define _POSIX_V7_LP64_OFF64        -1
#define _POSIX_V7_LPBIG_OFFBIG      -1
#endif

#define _POSIX2_BC_BASE_MAX         99
#define _POSIX2_BC_DIM_MAX          2048
#define _POSIX2_BC_SCALE_MAX        99
#define _POSIX2_BC_STRING_MAX       1000
#define _POSIX2_CHARCLASS_NAME_MAX  14
#define _POSIX2_CHAR_TERM           -1  /* not implemented */
#define _POSIX2_COLL_WEIGHTS_MAX    2
#define _POSIX2_C_BIND              _POSIX_VERSION
#define _POSIX2_C_DEV               -1  /* c dev utilities not implemented */
#define _POSIX2_EXPR_NEST_MAX       32
#define _POSIX2_LINE_MAX            2048
#define _POSIX2_LOCALEDEF           -1  /* localedef utilitiy not implemented */
#define _POSIX2_RE_DUP_MAX          _POSIX_RE_DUP_MAX
#define _POSIX2_SW_DEV              -1  /* software dev utilities not implemented */
#define _POSIX2_UPE                 -1  /* user portability utilities not implemented */

#define _XOPEN_ENH_I18N             -1  /* we don't support internationalization in the C library */
#define _XOPEN_CRYPT                -1  /* don't support X/Open Encryption */
#define _XOPEN_IOV_MAX              16
#define _XOPEN_LEGACY               -1  /* not support all */
#define _XOPEN_REALTIME             -1 /* we don't support all these functions */
#define _XOPEN_REALTIME_THREADS     -1  /* same here */
#define _XOPEN_SHM                  -1
#define _XOPEN_UNIX                 1

#endif


================================================
FILE: atlas-aapt/bionic/libc/include/bits/pthread_types.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _BITS_PTHREAD_TYPES_H_
#define _BITS_PTHREAD_TYPES_H_

#include <sys/types.h>

typedef long pthread_t;

typedef struct {
  uint32_t flags;
  void* stack_base;
  size_t stack_size;
  size_t guard_size;
  int32_t sched_policy;
  int32_t sched_priority;
#ifdef __LP64__
  char __reserved[16];
#endif
} pthread_attr_t;

#endif


================================================
FILE: atlas-aapt/bionic/libc/include/bits/timespec.h
================================================
/*
 * Copyright (C) 2014 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _BITS_TIMESPEC_H_
#define _BITS_TIMESPEC_H_

#include <sys/types.h>

/*
 * This file is used to include timespec definition without introducing the whole
 * <linux/time.h>, <sys/time.h> or <time.h>.
 */
#ifndef _STRUCT_TIMESPEC
#define _STRUCT_TIMESPEC
struct timespec {
  time_t tv_sec;
  long tv_nsec;
};
#endif

#endif


================================================
FILE: atlas-aapt/bionic/libc/include/bits/wchar_limits.h
================================================
/*
 * Copyright (C) 2014 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _BITS_WCHAR_LIMITS_H_
#define _BITS_WCHAR_LIMITS_H_

/* Both GCC and clang define __WCHAR_MAX__. */
#define WCHAR_MAX __WCHAR_MAX__

/* As of 3.4, clang still doesn't define __WCHAR_MIN__. */
#if defined(__WCHAR_UNSIGNED__)
#  define WCHAR_MIN L'\0'
#else
#  define WCHAR_MIN (-(WCHAR_MAX) - 1)
#endif

#endif


================================================
FILE: atlas-aapt/bionic/libc/include/byteswap.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */
#ifndef _BYTESWAP_H_
#define _BYTESWAP_H_

#include <sys/endian.h>

#define bswap_16(x) __swap16(x)
#define bswap_32(x) __swap32(x)
#define bswap_64(x) __swap64(x)

#endif /* _BYTESWAP_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/ctype.h
================================================
/*	$OpenBSD: ctype.h,v 1.19 2005/12/13 00:35:22 millert Exp $	*/
/*	$NetBSD: ctype.h,v 1.14 1994/10/26 00:55:47 cgd Exp $	*/

/*
 * Copyright (c) 1989 The Regents of the University of California.
 * All rights reserved.
 * (c) UNIX System Laboratories, Inc.
 * All or some portions of this file are derived from material licensed
 * to the University of California by American Telephone and Telegraph
 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
 * the permission of UNIX System Laboratories, Inc.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 *	@(#)ctype.h	5.3 (Berkeley) 4/3/91
 */

#ifndef _CTYPE_H_
#define _CTYPE_H_

#include <sys/cdefs.h>
#include <xlocale.h>

#define _CTYPE_U 0x01
#define _CTYPE_L 0x02
#define _CTYPE_D 0x04
#define _CTYPE_S 0x08
#define _CTYPE_P 0x10
#define _CTYPE_C 0x20
#define _CTYPE_X 0x40
#define _CTYPE_B 0x80
#define _CTYPE_R (_CTYPE_P|_CTYPE_U|_CTYPE_L|_CTYPE_D|_CTYPE_B)
#define _CTYPE_A (_CTYPE_L|_CTYPE_U)

__BEGIN_DECLS

extern const char	*_ctype_;

#if defined(__GNUC__) || defined(_ANSI_LIBRARY) || defined(lint)
int isalnum(int);
int isalpha(int);
int iscntrl(int);
int isdigit(int);
int isgraph(int);
int islower(int);
int isprint(int);
int ispunct(int);
int isspace(int);
int isupper(int);
int isxdigit(int);
int tolower(int);
int toupper(int);

#if __ANDROID_API__ >= 21
int isalnum_l(int, locale_t);
int isalpha_l(int, locale_t);
int isblank_l(int, locale_t);
int iscntrl_l(int, locale_t);
int isdigit_l(int, locale_t);
int isgraph_l(int, locale_t);
int islower_l(int, locale_t);
int isprint_l(int, locale_t);
int ispunct_l(int, locale_t);
int isspace_l(int, locale_t);
int isupper_l(int, locale_t);
int isxdigit_l(int, locale_t);
int tolower_l(int, locale_t);
int toupper_l(int, locale_t);
#endif /* __ANDROID_API__ >= 21 */

#if __BSD_VISIBLE || __ISO_C_VISIBLE >= 1999 || __POSIX_VISIBLE > 200112 \
    || __XPG_VISIBLE > 600
int isblank(int);
#endif

#if __BSD_VISIBLE || __XPG_VISIBLE
int isascii(int);
int toascii(int);
int _tolower(int);
int _toupper(int);
#endif /* __BSD_VISIBLE || __XPG_VISIBLE */

#endif /* __GNUC__ || _ANSI_LIBRARY || lint */

__END_DECLS

#endif /* !_CTYPE_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/dirent.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _DIRENT_H_
#define _DIRENT_H_

#include <stdint.h>
#include <sys/cdefs.h>

__BEGIN_DECLS

#ifndef DT_UNKNOWN
#define DT_UNKNOWN 0
#define DT_FIFO 1
#define DT_CHR 2
#define DT_DIR 4
#define DT_BLK 6
#define DT_REG 8
#define DT_LNK 10
#define DT_SOCK 12
#define DT_WHT 14
#endif

#define __DIRENT64_BODY \
    uint64_t         d_ino; \
    int64_t          d_off; \
    unsigned short   d_reclen; \
    unsigned char    d_type; \
    char             d_name[256]; \

struct dirent { __DIRENT64_BODY };
struct dirent64 { __DIRENT64_BODY };

#undef __DIRENT64_BODY

/* glibc compatibility. */
#undef _DIRENT_HAVE_D_NAMLEN /* Linux doesn't have a d_namlen field. */
#define _DIRENT_HAVE_D_RECLEN
#define _DIRENT_HAVE_D_OFF
#define _DIRENT_HAVE_D_TYPE

#define d_fileno d_ino

typedef struct DIR DIR;

extern DIR* opendir(const char*);
extern DIR* fdopendir(int);
extern struct dirent* readdir(DIR*);
extern struct dirent64* readdir64(DIR*);
extern int readdir_r(DIR*, struct dirent*, struct dirent**);
extern int readdir64_r(DIR*, struct dirent64*, struct dirent64**);
extern int closedir(DIR*);
extern void rewinddir(DIR*);
extern void seekdir(DIR*, long);
extern long telldir(DIR*);
extern int dirfd(DIR*);
extern int alphasort(const struct dirent**, const struct dirent**);
extern int alphasort64(const struct dirent64**, const struct dirent64**);
extern int scandir64(const char*, struct dirent64***, int (*)(const struct dirent64*), int (*)(const struct dirent64**, const struct dirent64**));
extern int scandir(const char*, struct dirent***, int (*)(const struct dirent*), int (*)(const struct dirent**, const struct dirent**));

#if defined(__USE_GNU)
int scandirat64(int, const char*, struct dirent64***, int (*)(const struct dirent64*), int (*)(const struct dirent64**, const struct dirent64**));
int scandirat(int, const char*, struct dirent***, int (*)(const struct dirent*), int (*)(const struct dirent**, const struct dirent**));
#endif

__END_DECLS

#endif /* _DIRENT_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/dlfcn.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */
#ifndef __DLFCN_H__
#define __DLFCN_H__

#include <sys/cdefs.h>

__BEGIN_DECLS

typedef struct {
    const char *dli_fname;  /* Pathname of shared object that
                               contains address */
    void       *dli_fbase;  /* Address at which shared object
                               is loaded */
    const char *dli_sname;  /* Name of nearest symbol with address
                               lower than addr */
    void       *dli_saddr;  /* Exact address of symbol named
                               in dli_sname */
} Dl_info;

extern void* dlopen(const char*  filename, int flag);
extern int dlclose(void*  handle);
extern const char* dlerror(void);
extern void* dlsym(void* handle, const char* symbol) __nonnull((2));
extern void* dlvsym(void* handle, const char* symbol, const char* version) __nonnull((2, 3));
extern int dladdr(const void* addr, Dl_info *info);

enum {
#if defined(__LP64__)
  RTLD_NOW  = 2,
#else
  RTLD_NOW  = 0,
#endif
  RTLD_LAZY = 1,

  RTLD_LOCAL  = 0,
#if defined(__LP64__)
  RTLD_GLOBAL = 0x00100,
#else
  RTLD_GLOBAL = 2,
#endif
  RTLD_NOLOAD = 4,
  RTLD_NODELETE = 0x01000,
};

#if defined (__LP64__)
#define RTLD_DEFAULT  ((void*) 0)
#define RTLD_NEXT     ((void*) -1L)
#else
#define RTLD_DEFAULT  ((void*) 0xffffffff)
#define RTLD_NEXT     ((void*) 0xfffffffe)
#endif

__END_DECLS

#endif /* __DLFCN_H */




================================================
FILE: atlas-aapt/bionic/libc/include/elf.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */
#ifndef _ELF_H
#define _ELF_H

#include <linux/auxvec.h>
#include <linux/elf.h>
#include <linux/elf-em.h>

#include <machine/elf_machdep.h>

#define ELF32_R_INFO(sym, type) ((((Elf32_Word)sym) << 8) | ((type) & 0xff))
#define ELF64_R_INFO(sym, type) ((((Elf64_Xword)sym) << 32) | ((type) & 0xffffffff))

typedef __s64 Elf32_Sxword;

typedef struct {
  __u32 a_type;
  union {
    __u32 a_val;
  } a_un;
} Elf32_auxv_t;

typedef struct {
  __u64 a_type;
  union {
    __u64 a_val;
  } a_un;
} Elf64_auxv_t;

typedef Elf32_Half Elf32_Versym;
typedef Elf64_Half Elf64_Versym;

typedef struct {
  Elf32_Half vd_version;
  Elf32_Half vd_flags;
  Elf32_Half vd_ndx;
  Elf32_Half vd_cnt;
  Elf32_Word vd_hash;
  Elf32_Word vd_aux;
  Elf32_Word vd_next;
} Elf32_Verdef;

typedef struct {
  Elf32_Word vda_name;
  Elf32_Word vda_next;
} Elf32_Verdaux;

typedef struct {
  Elf64_Half vd_version;
  Elf64_Half vd_flags;
  Elf64_Half vd_ndx;
  Elf64_Half vd_cnt;
  Elf64_Word vd_hash;
  Elf64_Word vd_aux;
  Elf64_Word vd_next;
} Elf64_Verdef;

typedef struct {
  Elf64_Word vda_name;
  Elf64_Word vda_next;
} Elf64_Verdaux;

typedef struct {
  Elf32_Half vn_version;
  Elf32_Half vn_cnt;
  Elf32_Word vn_file;
  Elf32_Word vn_aux;
  Elf32_Word vn_next;
} Elf32_Verneed;

typedef struct {
  Elf32_Word vna_hash;
  Elf32_Half vna_flags;
  Elf32_Half vna_other;
  Elf32_Word vna_name;
  Elf32_Word vna_next;
} Elf32_Vernaux;

typedef struct {
  Elf64_Half vn_version;
  Elf64_Half vn_cnt;
  Elf64_Word vn_file;
  Elf64_Word vn_aux;
  Elf64_Word vn_next;
} Elf64_Verneed;

typedef struct {
  Elf64_Word vna_hash;
  Elf64_Half vna_flags;
  Elf64_Half vna_other;
  Elf64_Word vna_name;
  Elf64_Word vna_next;
} Elf64_Vernaux;

#define DF_ORIGIN     0x00000001
#define DF_SYMBOLIC   0x00000002
#define DF_TEXTREL    0x00000004
#define DF_BIND_NOW   0x00000008
#define DF_STATIC_TLS 0x00000010

#define DF_1_NOW        0x00000001 /* Perform complete relocation processing. */
#define DF_1_GLOBAL     0x00000002 /* implies RTLD_GLOBAL */
#define DF_1_GROUP      0x00000004
#define DF_1_NODELETE   0x00000008 /* implies RTLD_NODELETE */
#define DF_1_LOADFLTR   0x00000010
#define DF_1_INITFIRST  0x00000020
#define DF_1_NOOPEN     0x00000040 /* Object can not be used with dlopen(3) */
#define DF_1_ORIGIN     0x00000080
#define DF_1_DIRECT     0x00000100
#define DF_1_TRANS      0x00000200
#define DF_1_INTERPOSE  0x00000400
#define DF_1_NODEFLIB   0x00000800
#define DF_1_NODUMP     0x00001000 /* Object cannot be dumped with dldump(3) */
#define DF_1_CONFALT    0x00002000
#define DF_1_ENDFILTEE  0x00004000
#define DF_1_DISPRELDNE 0x00008000
#define DF_1_DISPRELPND 0x00010000
#define DF_1_NODIRECT   0x00020000
#define DF_1_IGNMULDEF  0x00040000 /* Internal use */
#define DF_1_NOKSYMS    0x00080000 /* Internal use */
#define DF_1_NOHDR      0x00100000 /* Internal use */
#define DF_1_EDITED     0x00200000
#define DF_1_NORELOC    0x00400000 /* Internal use */
#define DF_1_SYMINTPOSE 0x00800000
#define DF_1_GLOBAUDIT  0x01000000
#define DF_1_SINGLETON  0x02000000
#define DF_1_STUB       0x04000000
#define DF_1_PIE        0x08000000

#define DT_BIND_NOW 24
#define DT_INIT_ARRAY 25
#define DT_FINI_ARRAY 26
#define DT_INIT_ARRAYSZ 27
#define DT_FINI_ARRAYSZ 28
#define DT_RUNPATH 29
#define DT_FLAGS 30
/* glibc and BSD disagree for DT_ENCODING; glibc looks wrong. */
#define DT_PREINIT_ARRAY 32
#define DT_PREINIT_ARRAYSZ 33

/* Android compressed rel/rela sections */
#define DT_ANDROID_REL (DT_LOOS + 2)
#define DT_ANDROID_RELSZ (DT_LOOS + 3)

#define DT_ANDROID_RELA (DT_LOOS + 4)
#define DT_ANDROID_RELASZ (DT_LOOS + 5)

/* gnu hash entry */
#define DT_GNU_HASH 0x6ffffef5

#define ELFOSABI_SYSV 0 /* Synonym for ELFOSABI_NONE used by valgrind. */

#define PT_GNU_RELRO 0x6474e552

#define STB_LOOS      10
#define STB_HIOS      12
#define STB_LOPROC    13
#define STB_HIPROC    15

#define SHT_LOOS    0x60000000
#define SHT_HIOS    0x6fffffff

#define STT_GNU_IFUNC 10
#define STT_LOOS      10
#define STT_HIOS      12
#define STT_LOPROC    13
#define STT_HIPROC    15

#define STV_DEFAULT   0
#define STV_INTERNAL  1
#define STV_HIDDEN    2
#define STV_PROTECTED 3

/* The kernel uses NT_PRFPREG but glibc also offers NT_FPREGSET */
#define NT_FPREGSET NT_PRFPREG

#define ELF_NOTE_GNU "GNU"

#define NT_GNU_BUILD_ID 3

#define VER_FLG_BASE 0x1
#define VER_FLG_WEAK 0x2

#define VER_NDX_LOCAL  0
#define VER_NDX_GLOBAL 1

#endif /* _ELF_H */


================================================
FILE: atlas-aapt/bionic/libc/include/endian.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */
#ifndef _ENDIAN_H_
#define _ENDIAN_H_

#include <sys/endian.h>

#endif /* _ENDIAN_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/err.h
================================================
/*	$OpenBSD: err.h,v 1.10 2006/01/06 18:53:04 millert Exp $	*/
/*	$NetBSD: err.h,v 1.11 1994/10/26 00:55:52 cgd Exp $	*/

/*-
 * Copyright (c) 1993
 *	The Regents of the University of California.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 *	@(#)err.h	8.1 (Berkeley) 6/2/93
 */

#ifndef _ERR_H_
#define _ERR_H_

#include <sys/cdefs.h>
#include <sys/types.h>

__BEGIN_DECLS

/* printf's format string isn't nullable; the err family's one is,
 * so we can't use __errlike here. */
#define __errlike(x, y) __attribute__((__format__(printf, x, y)))

__noreturn void err(int, const char *, ...) __errlike(2, 3);
__noreturn void verr(int, const char *, __va_list) __errlike(2, 0);
__noreturn void errx(int, const char *, ...) __errlike(2, 3);
__noreturn void verrx(int, const char *, __va_list) __errlike(2, 0);
void warn(const char *, ...) __errlike(1, 2);
void vwarn(const char *, __va_list) __errlike(1, 0);
void warnx(const char *, ...) __errlike(1, 2);
void vwarnx(const char *, __va_list) __errlike(1, 0);

__END_DECLS

#endif /* !_ERR_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/errno.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */
#ifndef _ERRNO_H
#define _ERRNO_H

#include <sys/cdefs.h>
#include <linux/errno.h>

__BEGIN_DECLS

/* on Linux, ENOTSUP and EOPNOTSUPP are defined as the same error code
 * even if 1000.3 states that they should be different
 */
#ifndef  ENOTSUP
#define  ENOTSUP  EOPNOTSUPP
#endif

/* internal function returning the address of the thread-specific errno */
extern volatile int* __errno(void) __pure2;

/* a macro expanding to the errno l-value */
#define  errno   (*__errno())

#if __ANDROID_API__ < 21
#include <android/legacy_errno_inlines.h>
#endif

__END_DECLS

#endif /* _ERRNO_H */


================================================
FILE: atlas-aapt/bionic/libc/include/error.h
================================================
/*
 * Copyright (C) 2015 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _ERROR_H
#define _ERROR_H 1

#include <sys/cdefs.h>

__BEGIN_DECLS

void error(int, int, const char*, ...) __printflike(3, 4);
void error_at_line(int, int, const char*, unsigned int, const char*, ...) __printflike(5, 6);

extern void (*error_print_progname)(void);
extern unsigned int error_message_count;
extern int error_one_per_line;

__END_DECLS

#endif


================================================
FILE: atlas-aapt/bionic/libc/include/fcntl.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _FCNTL_H
#define _FCNTL_H

#include <sys/cdefs.h>
#include <sys/types.h>
#include <linux/fadvise.h>
#include <linux/fcntl.h>
#include <linux/stat.h>
#include <linux/uio.h>

#if defined(__USE_GNU) || defined(__USE_BSD)
#include <bits/lockf.h>
#endif

__BEGIN_DECLS

#ifdef __LP64__
/* LP64 kernels don't have F_*64 defines because their flock is 64-bit. */
#define F_GETLK64  F_GETLK
#define F_SETLK64  F_SETLK
#define F_SETLKW64 F_SETLKW
#endif

#define O_ASYNC FASYNC
#define O_RSYNC O_SYNC

#define SPLICE_F_MOVE 1
#define SPLICE_F_NONBLOCK 2
#define SPLICE_F_MORE 4
#define SPLICE_F_GIFT 8

#define SYNC_FILE_RANGE_WAIT_BEFORE 1
#define SYNC_FILE_RANGE_WRITE 2
#define SYNC_FILE_RANGE_WAIT_AFTER 4

extern int creat(const char*, mode_t);
extern int creat64(const char*, mode_t);
extern int fcntl(int, int, ...);
extern int openat(int, const char*, int, ...);
extern int openat64(int, const char*, int, ...);
extern int open(const char*, int, ...);
extern int open64(const char*, int, ...);
extern ssize_t splice(int, off64_t*, int, off64_t*, size_t, unsigned int);
extern ssize_t tee(int, int, size_t, unsigned int);
extern int unlinkat(int, const char*, int);
extern ssize_t vmsplice(int, const struct iovec*, size_t, unsigned int);

#if defined(__USE_FILE_OFFSET64)
extern int fallocate(int, int, off_t, off_t) __RENAME(fallocate64);
extern int posix_fadvise(int, off_t, off_t, int) __RENAME(posix_fadvise64);
extern int posix_fallocate(int, off_t, off_t) __RENAME(posix_fallocate);
#else
extern int fallocate(int, int, off_t, off_t);
extern int posix_fadvise(int, off_t, off_t, int);
extern int posix_fallocate(int, off_t, off_t);
#endif
extern int fallocate64(int, int, off64_t, off64_t);
extern int posix_fadvise64(int, off64_t, off64_t, int);
extern int posix_fallocate64(int, off64_t, off64_t);

extern int __open_2(const char*, int);
extern int __open_real(const char*, int, ...) __RENAME(open);
extern int __openat_2(int, const char*, int);
extern int __openat_real(int, const char*, int, ...) __RENAME(openat);
__errordecl(__creat_missing_mode, "called with O_CREAT, but missing mode");
__errordecl(__creat_too_many_args, "too many arguments");

#if defined(__BIONIC_FORTIFY)

#if !defined(__clang__)

__BIONIC_FORTIFY_INLINE
int open(const char* pathname, int flags, ...) {
    if (__builtin_constant_p(flags)) {
        if ((flags & O_CREAT) && __builtin_va_arg_pack_len() == 0) {
            __creat_missing_mode();  // compile time error
        }
    }

    if (__builtin_va_arg_pack_len() > 1) {
        __creat_too_many_args();  // compile time error
    }

    if ((__builtin_va_arg_pack_len() == 0) && !__builtin_constant_p(flags)) {
        return __open_2(pathname, flags);
    }

    return __open_real(pathname, flags, __builtin_va_arg_pack());
}

__BIONIC_FORTIFY_INLINE
int openat(int dirfd, const char* pathname, int flags, ...) {
    if (__builtin_constant_p(flags)) {
        if ((flags & O_CREAT) && __builtin_va_arg_pack_len() == 0) {
            __creat_missing_mode();  // compile time error
        }
    }

    if (__builtin_va_arg_pack_len() > 1) {
        __creat_too_many_args();  // compile time error
    }

    if ((__builtin_va_arg_pack_len() == 0) && !__builtin_constant_p(flags)) {
        return __openat_2(dirfd, pathname, flags);
    }

    return __openat_real(dirfd, pathname, flags, __builtin_va_arg_pack());
}

#endif /* !defined(__clang__) */

#endif /* defined(__BIONIC_FORTIFY) */

__END_DECLS

#endif /* _FCNTL_H */


================================================
FILE: atlas-aapt/bionic/libc/include/features.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _FEATURES_H_
#define _FEATURES_H_

/* Our <features.h> macro fun is all in <sys/cdefs.h>. */
#include <sys/cdefs.h>

#endif /* _FEATURES_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/fnmatch.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */
#ifndef _FNMATCH_H
#define _FNMATCH_H

#include <sys/cdefs.h>

__BEGIN_DECLS

#define FNM_NOMATCH      1     /* Match failed. */
#define FNM_NOSYS        2     /* Function not supported (unused). */

#define FNM_NOESCAPE     0x01        /* Disable backslash escaping. */
#define FNM_PATHNAME     0x02        /* Slash must be matched by slash. */
#define FNM_PERIOD       0x04        /* Period must be matched by period. */
#define FNM_LEADING_DIR  0x08        /* Ignore /<tail> after Imatch. */
#define FNM_CASEFOLD     0x10        /* Case insensitive search. */

#define FNM_IGNORECASE   FNM_CASEFOLD
#define FNM_FILE_NAME    FNM_PATHNAME

extern int  fnmatch(const char *pattern, const char *string, int flags);

__END_DECLS

#endif /* _FNMATCH_H */



================================================
FILE: atlas-aapt/bionic/libc/include/fts.h
================================================
/*	$OpenBSD: fts.h,v 1.12 2009/08/27 16:19:27 millert Exp $	*/
/*	$NetBSD: fts.h,v 1.5 1994/12/28 01:41:50 mycroft Exp $	*/

/*
 * Copyright (c) 1989, 1993
 *	The Regents of the University of California.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 *	@(#)fts.h	8.3 (Berkeley) 8/14/94
 */

#ifndef	_FTS_H_
#define	_FTS_H_

#include <sys/types.h>

typedef struct {
	struct _ftsent *fts_cur;	/* current node */
	struct _ftsent *fts_child;	/* linked list of children */
	struct _ftsent **fts_array;	/* sort array */
	dev_t fts_dev;			/* starting device # */
	char *fts_path;			/* path for this descent */
	int fts_rfd;			/* fd for root */
	size_t fts_pathlen;		/* sizeof(path) */
	int fts_nitems;			/* elements in the sort array */
	int (*fts_compar)();		/* compare function */

#define	FTS_COMFOLLOW	0x0001		/* follow command line symlinks */
#define	FTS_LOGICAL	0x0002		/* logical walk */
#define	FTS_NOCHDIR	0x0004		/* don't change directories */
#define	FTS_NOSTAT	0x0008		/* don't get stat info */
#define	FTS_PHYSICAL	0x0010		/* physical walk */
#define	FTS_SEEDOT	0x0020		/* return dot and dot-dot */
#define	FTS_XDEV	0x0040		/* don't cross devices */
#define	FTS_OPTIONMASK	0x00ff		/* valid user option mask */

#define	FTS_NAMEONLY	0x1000		/* (private) child names only */
#define	FTS_STOP	0x2000		/* (private) unrecoverable error */
	int fts_options;		/* fts_open options, global flags */
} FTS;

typedef struct _ftsent {
	struct _ftsent *fts_cycle;	/* cycle node */
	struct _ftsent *fts_parent;	/* parent directory */
	struct _ftsent *fts_link;	/* next file in directory */
	long fts_number;	        /* local numeric value */
	void *fts_pointer;	        /* local address value */
	char *fts_accpath;		/* access path */
	char *fts_path;			/* root path */
	int fts_errno;			/* errno for this node */
	int fts_symfd;			/* fd for symlink */
	size_t fts_pathlen;		/* strlen(fts_path) */
	size_t fts_namelen;		/* strlen(fts_name) */

	ino_t fts_ino;			/* inode */
	dev_t fts_dev;			/* device */
	nlink_t fts_nlink;		/* link count */

#define	FTS_ROOTPARENTLEVEL	-1
#define	FTS_ROOTLEVEL		 0
#define	FTS_MAXLEVEL		 0x7fff
	short fts_level;		/* depth (-1 to N) */

#define	FTS_D		 1		/* preorder directory */
#define	FTS_DC		 2		/* directory that causes cycles */
#define	FTS_DEFAULT	 3		/* none of the above */
#define	FTS_DNR		 4		/* unreadable directory */
#define	FTS_DOT		 5		/* dot or dot-dot */
#define	FTS_DP		 6		/* postorder directory */
#define	FTS_ERR		 7		/* error; errno is set */
#define	FTS_F		 8		/* regular file */
#define	FTS_INIT	 9		/* initialized only */
#define	FTS_NS		10		/* stat(2) failed */
#define	FTS_NSOK	11		/* no stat(2) requested */
#define	FTS_SL		12		/* symbolic link */
#define	FTS_SLNONE	13		/* symbolic link without target */
	unsigned short fts_info;	/* user flags for FTSENT structure */

#define	FTS_DONTCHDIR	 0x01		/* don't chdir .. to the parent */
#define	FTS_SYMFOLLOW	 0x02		/* followed a symlink to get here */
	unsigned short fts_flags;	/* private flags for FTSENT structure */

#define	FTS_AGAIN	 1		/* read node again */
#define	FTS_FOLLOW	 2		/* follow symbolic link */
#define	FTS_NOINSTR	 3		/* no instructions */
#define	FTS_SKIP	 4		/* discard node */
	unsigned short fts_instr;	/* fts_set() instructions */

	struct stat *fts_statp;		/* stat(2) information */
	char fts_name[1];		/* file name */
} FTSENT;

__BEGIN_DECLS
FTSENT	*fts_children(FTS *, int);
int	 fts_close(FTS *);
FTS	*fts_open(char * const *, int,
	    int (*)(const FTSENT **, const FTSENT **));
FTSENT	*fts_read(FTS *);
int	 fts_set(FTS *, FTSENT *, int);
__END_DECLS

#endif /* !_FTS_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/ftw.h
================================================
/* $NetBSD: ftw.h,v 1.1 2005/12/30 23:07:33 agc Exp $ */

/*	From OpenBSD: ftw.h,v 1.1 2003/07/21 21:13:18 millert Exp 	*/

/*
 * Copyright (c) 2003 Todd C. Miller <Todd.Miller@courtesan.com>
 *
 * Permission to use, copy, modify, and distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 *
 * Sponsored in part by the Defense Advanced Research Projects
 * Agency (DARPA) and Air Force Research Laboratory, Air Force
 * Materiel Command, USAF, under agreement number F39502-99-1-0512.
 */

#ifndef	_FTW_H
#define	_FTW_H

#include <sys/types.h>
#include <sys/stat.h>

/*
 * Valid flags for the 3rd argument to the function that is passed as the
 * second argument to ftw(3) and nftw(3).  Say it three times fast!
 */
#define	FTW_F		0	/* File.  */
#define	FTW_D		1	/* Directory.  */
#define	FTW_DNR		2	/* Directory without read permission.  */
#define	FTW_DP		3	/* Directory with subdirectories visited.  */
#define	FTW_NS		4	/* Unknown type; stat() failed.  */
#define	FTW_SL		5	/* Symbolic link.  */
#define	FTW_SLN		6	/* Sym link that names a nonexistent file.  */

/*
 * Flags for use as the 4th argument to nftw(3).  These may be ORed together.
 */
#define	FTW_PHYS	0x01	/* Physical walk, don't follow sym links.  */
#define	FTW_MOUNT	0x02	/* The walk does not cross a mount point.  */
#define	FTW_DEPTH	0x04	/* Subdirs visited before the dir itself. */
#define	FTW_CHDIR	0x08	/* Change to a directory before reading it. */

struct FTW {
	int base;
	int level;
};

__BEGIN_DECLS
int	ftw(const char *, int (*)(const char *, const struct stat *, int), int);
int	nftw(const char *, int (*)(const char *, const struct stat *, int,
	    struct FTW *), int, int);
int	ftw64(const char *, int (*)(const char *, const struct stat64 *, int), int);
int	nftw64(const char *, int (*)(const char *, const struct stat64 *, int,
	    struct FTW *), int, int);
__END_DECLS

#endif	/* !_FTW_H */


================================================
FILE: atlas-aapt/bionic/libc/include/getopt.h
================================================
/*	$NetBSD: getopt.h,v 1.4 2000/07/07 10:43:54 ad Exp $	*/
/*	$FreeBSD$ */

/*-
 * Copyright (c) 2000 The NetBSD Foundation, Inc.
 * All rights reserved.
 *
 * This code is derived from software contributed to The NetBSD Foundation
 * by Dieter Baron and Thomas Klausner.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 */

#ifndef _GETOPT_H_
#define _GETOPT_H_

#include <sys/cdefs.h>

/*
 * GNU-like getopt_long()/getopt_long_only() with 4.4BSD optreset extension.
 * getopt() is declared here too for GNU programs.
 */
#define no_argument        0
#define required_argument  1
#define optional_argument  2

struct option {
	/* name of long option */
	const char *name;
	/*
	 * one of no_argument, required_argument, and optional_argument:
	 * whether option takes an argument
	 */
	int has_arg;
	/* if not NULL, set *flag to val when option found */
	int *flag;
	/* if flag not NULL, value to set *flag to; else return value */
	int val;
};

__BEGIN_DECLS
int	getopt_long(int, char * const *, const char *,
	const struct option *, int *);
int	getopt_long_only(int, char * const *, const char *,
	const struct option *, int *);
#ifndef _GETOPT_DECLARED
#define	_GETOPT_DECLARED
int	 getopt(int, char * const [], const char *);

extern char *optarg;			/* getopt(3) external variables */
extern int optind, opterr, optopt;
#endif
#ifndef _OPTRESET_DECLARED
#define	_OPTRESET_DECLARED
extern int optreset;			/* getopt(3) external variable */
#endif
__END_DECLS
 
#endif /* !_GETOPT_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/grp.h
================================================
/*	$OpenBSD: grp.h,v 1.8 2005/12/13 00:35:22 millert Exp $	*/
/*	$NetBSD: grp.h,v 1.7 1995/04/29 05:30:40 cgd Exp $	*/

/*-
 * Copyright (c) 1989, 1993
 *	The Regents of the University of California.  All rights reserved.
 * (c) UNIX System Laboratories, Inc.
 * All or some portions of this file are derived from material licensed
 * to the University of California by American Telephone and Telegraph
 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
 * the permission of UNIX System Laboratories, Inc.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 *	@(#)grp.h	8.2 (Berkeley) 1/21/94
 */

#ifndef _GRP_H_
#define	_GRP_H_

#include <sys/cdefs.h>
#include <sys/types.h>

struct group {
	char	*gr_name;		/* group name */
	char	*gr_passwd;		/* group password */
	gid_t	gr_gid;			/* group id */
	char	**gr_mem;		/* group members */
};

__BEGIN_DECLS
struct group	*getgrgid(gid_t);
struct group	*getgrnam(const char *);
#if __POSIX_VISIBLE >= 200112 || __XPG_VISIBLE
struct group	*getgrent(void)  __attribute__((deprecated("getgrent is meaningless on Android")));
void setgrent(void) __attribute__((deprecated("setgrent is meaningless on Android")));
void endgrent(void) __attribute__((deprecated("endgrent is meaningless on Android")));
int		 getgrgid_r(gid_t, struct group *, char *,
		    size_t, struct group **);
int		 getgrnam_r(const char *, struct group *, char *,
		    size_t, struct group **);
#endif

int   getgrouplist (const char *user, gid_t group,
                  gid_t *groups, int *ngroups);

int   initgroups (const char *user, gid_t group);

__END_DECLS

#endif /* !_GRP_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/ifaddrs.h
================================================
/*
 * Copyright (C) 2015 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _IFADDRS_H_
#define _IFADDRS_H_

#include <sys/cdefs.h>
#include <netinet/in.h>
#include <sys/socket.h>

__BEGIN_DECLS

struct ifaddrs {
  struct ifaddrs* ifa_next;
  char* ifa_name;
  unsigned int ifa_flags;
  struct sockaddr* ifa_addr;
  struct sockaddr* ifa_netmask;
  union {
    struct sockaddr* ifu_broadaddr;
    struct sockaddr* ifu_dstaddr;
  } ifa_ifu;
  void* ifa_data;
};

#define ifa_broadaddr ifa_ifu.ifu_broadaddr
#define ifa_dstaddr ifa_ifu.ifu_dstaddr

void freeifaddrs(struct ifaddrs*);
int getifaddrs(struct ifaddrs**);

__END_DECLS

#endif


================================================
FILE: atlas-aapt/bionic/libc/include/inttypes.h
================================================
/*	$OpenBSD: inttypes.h,v 1.9 2006/01/15 00:47:51 millert Exp $	*/

/*
 * Copyright (c) 1997, 2005 Todd C. Miller <Todd.Miller@courtesan.com>
 *
 * Permission to use, copy, modify, and distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */

#ifndef	_INTTYPES_H_
#define	_INTTYPES_H_

#include <stdint.h>
#include <sys/cdefs.h>

#ifdef __LP64__
#define __PRI_64_prefix  "l"
#define __PRI_PTR_prefix "l"
#else
#define __PRI_64_prefix "ll"
#define __PRI_PTR_prefix
#endif

/*
 * 7.8.1 Macros for format specifiers
 *
 * Each of the following object-like macros expands to a string
 * literal containing a conversion specifier, possibly modified by
 * a prefix such as hh, h, l, or ll, suitable for use within the
 * format argument of a formatted input/output function when
 * converting the corresponding integer type.  These macro names
 * have the general form of PRI (character string literals for the
 * fprintf family) or SCN (character string literals for the fscanf
 * family), followed by the conversion specifier, followed by a
 * name corresponding to a similar typedef name.  For example,
 * PRIdFAST32 can be used in a format string to print the value of
 * an integer of type int_fast32_t.
 */

/* fprintf macros for signed integers */
#define	PRId8			"d"		/* int8_t */
#define	PRId16			"d"		/* int16_t */
#define	PRId32			"d"		/* int32_t */
#define	PRId64			__PRI_64_prefix"d"		/* int64_t */

#define	PRIdLEAST8		"d"		/* int_least8_t */
#define	PRIdLEAST16		"d"		/* int_least16_t */
#define	PRIdLEAST32		"d"		/* int_least32_t */
#define	PRIdLEAST64		__PRI_64_prefix"d"		/* int_least64_t */

#define	PRIdFAST8		"d"		/* int_fast8_t */
#define	PRIdFAST16		"d"		/* int_fast16_t */
#define	PRIdFAST32		"d"		/* int_fast32_t */
#define	PRIdFAST64		__PRI_64_prefix"d"		/* int_fast64_t */

#define	PRIdMAX			"jd"		/* intmax_t */
#define	PRIdPTR			__PRI_PTR_prefix"d"		/* intptr_t */

#define	PRIi8			"i"		/* int8_t */
#define	PRIi16			"i"		/* int16_t */
#define	PRIi32			"i"		/* int32_t */
#define	PRIi64			__PRI_64_prefix"i"		/* int64_t */

#define	PRIiLEAST8		"i"		/* int_least8_t */
#define	PRIiLEAST16		"i"		/* int_least16_t */
#define	PRIiLEAST32		"i"		/* int_least32_t */
#define	PRIiLEAST64		__PRI_64_prefix"i"		/* int_least64_t */

#define	PRIiFAST8		"i"		/* int_fast8_t */
#define	PRIiFAST16		"i"		/* int_fast16_t */
#define	PRIiFAST32		"i"		/* int_fast32_t */
#define	PRIiFAST64		__PRI_64_prefix"i"		/* int_fast64_t */

#define	PRIiMAX			"ji"		/* intmax_t */
#define	PRIiPTR			__PRI_PTR_prefix"i"		/* intptr_t */

/* fprintf macros for unsigned integers */
#define	PRIo8			"o"		/* int8_t */
#define	PRIo16			"o"		/* int16_t */
#define	PRIo32			"o"		/* int32_t */
#define	PRIo64			__PRI_64_prefix"o"		/* int64_t */

#define	PRIoLEAST8		"o"		/* int_least8_t */
#define	PRIoLEAST16		"o"		/* int_least16_t */
#define	PRIoLEAST32		"o"		/* int_least32_t */
#define	PRIoLEAST64		__PRI_64_prefix"o"		/* int_least64_t */

#define	PRIoFAST8		"o"		/* int_fast8_t */
#define	PRIoFAST16		"o"		/* int_fast16_t */
#define	PRIoFAST32		"o"		/* int_fast32_t */
#define	PRIoFAST64		__PRI_64_prefix"o"		/* int_fast64_t */

#define	PRIoMAX			"jo"		/* intmax_t */
#define	PRIoPTR			__PRI_PTR_prefix"o"		/* intptr_t */

#define	PRIu8			"u"		/* uint8_t */
#define	PRIu16			"u"		/* uint16_t */
#define	PRIu32			"u"		/* uint32_t */
#define	PRIu64			__PRI_64_prefix"u"		/* uint64_t */

#define	PRIuLEAST8		"u"		/* uint_least8_t */
#define	PRIuLEAST16		"u"		/* uint_least16_t */
#define	PRIuLEAST32		"u"		/* uint_least32_t */
#define	PRIuLEAST64		__PRI_64_prefix"u"		/* uint_least64_t */

#define	PRIuFAST8		"u"		/* uint_fast8_t */
#define	PRIuFAST16		"u"		/* uint_fast16_t */
#define	PRIuFAST32		"u"		/* uint_fast32_t */
#define	PRIuFAST64		__PRI_64_prefix"u"		/* uint_fast64_t */

#define	PRIuMAX			"ju"		/* uintmax_t */
#define	PRIuPTR			__PRI_PTR_prefix"u"		/* uintptr_t */

#define	PRIx8			"x"		/* uint8_t */
#define	PRIx16			"x"		/* uint16_t */
#define	PRIx32			"x"		/* uint32_t */
#define	PRIx64			__PRI_64_prefix"x"		/* uint64_t */

#define	PRIxLEAST8		"x"		/* uint_least8_t */
#define	PRIxLEAST16		"x"		/* uint_least16_t */
#define	PRIxLEAST32		"x"		/* uint_least32_t */
#define	PRIxLEAST64		__PRI_64_prefix"x"		/* uint_least64_t */

#define	PRIxFAST8		"x"		/* uint_fast8_t */
#define	PRIxFAST16		"x"		/* uint_fast16_t */
#define	PRIxFAST32		"x"		/* uint_fast32_t */
#define	PRIxFAST64		__PRI_64_prefix"x"		/* uint_fast64_t */

#define	PRIxMAX			"jx"		/* uintmax_t */
#define	PRIxPTR			__PRI_PTR_prefix"x"		/* uintptr_t */

#define	PRIX8			"X"		/* uint8_t */
#define	PRIX16			"X"		/* uint16_t */
#define	PRIX32			"X"		/* uint32_t */
#define	PRIX64			__PRI_64_prefix"X"		/* uint64_t */

#define	PRIXLEAST8		"X"		/* uint_least8_t */
#define	PRIXLEAST16		"X"		/* uint_least16_t */
#define	PRIXLEAST32		"X"		/* uint_least32_t */
#define	PRIXLEAST64		__PRI_64_prefix"X"		/* uint_least64_t */

#define	PRIXFAST8		"X"		/* uint_fast8_t */
#define	PRIXFAST16		"X"		/* uint_fast16_t */
#define	PRIXFAST32		"X"		/* uint_fast32_t */
#define	PRIXFAST64		__PRI_64_prefix"X"		/* uint_fast64_t */

#define	PRIXMAX			"jX"		/* uintmax_t */
#define	PRIXPTR			__PRI_PTR_prefix"X"		/* uintptr_t */

/* fscanf macros for signed integers */
#define	SCNd8			"hhd"		/* int8_t */
#define	SCNd16			"hd"		/* int16_t */
#define	SCNd32			"d"		/* int32_t */
#define	SCNd64			__PRI_64_prefix"d"		/* int64_t */

#define	SCNdLEAST8		"hhd"		/* int_least8_t */
#define	SCNdLEAST16		"hd"		/* int_least16_t */
#define	SCNdLEAST32		"d"		/* int_least32_t */
#define	SCNdLEAST64		__PRI_64_prefix"d"		/* int_least64_t */

#define	SCNdFAST8		"hhd"		/* int_fast8_t */
#define	SCNdFAST16		"hd"		/* int_fast16_t */
#define	SCNdFAST32		"d"		/* int_fast32_t */
#define	SCNdFAST64		__PRI_64_prefix"d"		/* int_fast64_t */

#define	SCNdMAX			"jd"		/* intmax_t */
#define	SCNdPTR			__PRI_PTR_prefix"d"		/* intptr_t */

#define	SCNi8			"hhi"		/* int8_t */
#define	SCNi16			"hi"		/* int16_t */
#define	SCNi32			"i"		/* int32_t */
#define	SCNi64			__PRI_64_prefix"i"		/* int64_t */

#define	SCNiLEAST8		"hhi"		/* int_least8_t */
#define	SCNiLEAST16		"hi"		/* int_least16_t */
#define	SCNiLEAST32		"i"		/* int_least32_t */
#define	SCNiLEAST64		__PRI_64_prefix"i"		/* int_least64_t */

#define	SCNiFAST8		"hhi"		/* int_fast8_t */
#define	SCNiFAST16		"hi"		/* int_fast16_t */
#define	SCNiFAST32		"i"		/* int_fast32_t */
#define	SCNiFAST64		__PRI_64_prefix"i"		/* int_fast64_t */

#define	SCNiMAX			"ji"		/* intmax_t */
#define	SCNiPTR			__PRI_PTR_prefix"i"		/* intptr_t */

/* fscanf macros for unsigned integers */
#define	SCNo8			"hho"		/* uint8_t */
#define	SCNo16			"ho"		/* uint16_t */
#define	SCNo32			"o"		/* uint32_t */
#define	SCNo64			__PRI_64_prefix"o"		/* uint64_t */

#define	SCNoLEAST8		"hho"		/* uint_least8_t */
#define	SCNoLEAST16		"ho"		/* uint_least16_t */
#define	SCNoLEAST32		"o"		/* uint_least32_t */
#define	SCNoLEAST64		__PRI_64_prefix"o"		/* uint_least64_t */

#define	SCNoFAST8		"hho"		/* uint_fast8_t */
#define	SCNoFAST16		"ho"		/* uint_fast16_t */
#define	SCNoFAST32		"o"		/* uint_fast32_t */
#define	SCNoFAST64		__PRI_64_prefix"o"		/* uint_fast64_t */

#define	SCNoMAX			"jo"		/* uintmax_t */
#define	SCNoPTR			__PRI_PTR_prefix"o"		/* uintptr_t */

#define	SCNu8			"hhu"		/* uint8_t */
#define	SCNu16			"hu"		/* uint16_t */
#define	SCNu32			"u"		/* uint32_t */
#define	SCNu64			__PRI_64_prefix"u"		/* uint64_t */

#define	SCNuLEAST8		"hhu"		/* uint_least8_t */
#define	SCNuLEAST16		"hu"		/* uint_least16_t */
#define	SCNuLEAST32		"u"		/* uint_least32_t */
#define	SCNuLEAST64		__PRI_64_prefix"u"		/* uint_least64_t */

#define	SCNuFAST8		"hhu"		/* uint_fast8_t */
#define	SCNuFAST16		"hu"		/* uint_fast16_t */
#define	SCNuFAST32		"u"		/* uint_fast32_t */
#define	SCNuFAST64		__PRI_64_prefix"u"		/* uint_fast64_t */

#define	SCNuMAX			"ju"		/* uintmax_t */
#define	SCNuPTR			__PRI_PTR_prefix"u"		/* uintptr_t */

#define	SCNx8			"hhx"		/* uint8_t */
#define	SCNx16			"hx"		/* uint16_t */
#define	SCNx32			"x"		/* uint32_t */
#define	SCNx64			__PRI_64_prefix"x"		/* uint64_t */

#define	SCNxLEAST8		"hhx"		/* uint_least8_t */
#define	SCNxLEAST16		"hx"		/* uint_least16_t */
#define	SCNxLEAST32		"x"		/* uint_least32_t */
#define	SCNxLEAST64		__PRI_64_prefix"x"		/* uint_least64_t */

#define	SCNxFAST8		"hhx"		/* uint_fast8_t */
#define	SCNxFAST16		"hx"		/* uint_fast16_t */
#define	SCNxFAST32		"x"		/* uint_fast32_t */
#define	SCNxFAST64		__PRI_64_prefix"x"		/* uint_fast64_t */

#define	SCNxMAX			"jx"		/* uintmax_t */
#define	SCNxPTR			__PRI_PTR_prefix"x"		/* uintptr_t */

typedef struct {
	intmax_t quot;		/* quotient */
	intmax_t rem;		/* remainder */
} imaxdiv_t;

__BEGIN_DECLS
intmax_t	imaxabs(intmax_t) __pure2;
imaxdiv_t	imaxdiv(intmax_t, intmax_t) __pure2;
intmax_t	strtoimax(const char *, char **, int);
uintmax_t	strtoumax(const char *, char **, int);
intmax_t	wcstoimax(const wchar_t * __restrict,
		    wchar_t ** __restrict, int);
uintmax_t	wcstoumax(const wchar_t * __restrict,
		    wchar_t ** __restrict, int);
__END_DECLS

#endif /* _INTTYPES_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/lastlog.h
================================================


================================================
FILE: atlas-aapt/bionic/libc/include/libgen.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _LIBGEN_H
#define _LIBGEN_H

#include <sys/cdefs.h>
#include <sys/types.h>


__BEGIN_DECLS

/*
 * Including <string.h> will get you the GNU basename, unless <libgen.h> is
 * included, either before or after including <string.h>.
 *
 * Note that this has the wrong argument cv-qualifiers, but doesn't modify its
 * input and uses thread-local storage for the result if necessary.
 */
extern char* __posix_basename(const char*) __RENAME(basename);

#define basename __posix_basename

/* This has the wrong argument cv-qualifiers, but doesn't modify its input and uses thread-local storage for the result if necessary. */
extern char* dirname(const char*);

#if !defined(__LP64__)
/* These non-standard functions are not needed on Android; basename and dirname use thread-local storage. */
extern int dirname_r(const char*, char*, size_t);
extern int basename_r(const char*, char*, size_t);
#endif

__END_DECLS

#endif /* _LIBGEN_H */


================================================
FILE: atlas-aapt/bionic/libc/include/limits.h
================================================
/*	$OpenBSD: limits.h,v 1.13 2005/12/31 19:29:38 millert Exp $	*/
/*	$NetBSD: limits.h,v 1.7 1994/10/26 00:56:00 cgd Exp $	*/

/*
 * Copyright (c) 1988 The Regents of the University of California.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 *	@(#)limits.h	5.9 (Berkeley) 4/3/91
 */

#ifndef _LIMITS_H_
#define	_LIMITS_H_

#include <sys/cdefs.h>

#if __XPG_VISIBLE
#define PASS_MAX		128	/* _PASSWORD_LEN from <pwd.h> */

#define NL_ARGMAX		9
#define NL_LANGMAX		14
#define NL_MSGMAX		32767
#define NL_NMAX			1
#define NL_SETMAX		255
#define NL_TEXTMAX		255

#define TMP_MAX                 308915776
#endif /* __XPG_VISIBLE */

#include <sys/limits.h>

#if __POSIX_VISIBLE
#include <sys/syslimits.h>
#endif

/* GLibc compatibility definitions.
   Note that these are defined by GCC's <limits.h>
   only when __GNU_LIBRARY__ is defined, i.e. when
   targetting GLibc. */
#ifndef LONG_LONG_MIN
#define LONG_LONG_MIN  LLONG_MIN
#endif

#ifndef LONG_LONG_MAX
#define LONG_LONG_MAX  LLONG_MAX
#endif

#ifndef ULONG_LONG_MAX
#define ULONG_LONG_MAX  ULLONG_MAX
#endif

/* BSD compatibility definitions. */
#if __BSD_VISIBLE
#define SIZE_T_MAX ULONG_MAX
#endif /* __BSD_VISIBLE */

#define SSIZE_MAX LONG_MAX

#define MB_LEN_MAX 4

#define SEM_VALUE_MAX 0x3fffffff

/* POSIX says these belong in <unistd.h> but BSD has some in <limits.h>. */
#include <bits/posix_limits.h>

#define HOST_NAME_MAX _POSIX_HOST_NAME_MAX
#endif /* !_LIMITS_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/link.h
================================================
/*
 * Copyright (C) 2012 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */
#ifndef _LINK_H_
#define _LINK_H_

#include <sys/types.h>
#include <elf.h>

__BEGIN_DECLS

#if __LP64__
#define ElfW(type) Elf64_ ## type
#else
#define ElfW(type) Elf32_ ## type
#endif

struct dl_phdr_info {
  ElfW(Addr) dlpi_addr;
  const char* dlpi_name;
  const ElfW(Phdr)* dlpi_phdr;
  ElfW(Half) dlpi_phnum;
};

int dl_iterate_phdr(int (*)(struct dl_phdr_info*, size_t, void*), void*);

#ifdef __arm__
typedef long unsigned int* _Unwind_Ptr;
_Unwind_Ptr dl_unwind_find_exidx(_Unwind_Ptr, int*);
#endif

/* Used by the dynamic linker to communicate with the debugger. */
struct link_map {
  ElfW(Addr) l_addr;
  char* l_name;
  ElfW(Dyn)* l_ld;
  struct link_map* l_next;
  struct link_map* l_prev;
};

/* Used by the dynamic linker to communicate with the debugger. */
struct r_debug {
  int32_t r_version;
  struct link_map* r_map;
  ElfW(Addr) r_brk;
  enum {
    RT_CONSISTENT,
    RT_ADD,
    RT_DELETE
  } r_state;
  ElfW(Addr) r_ldbase;
};

__END_DECLS

#endif /* _LINK_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/locale.h
================================================
/*
 * Copyright (C) 2008 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */
#ifndef _LOCALE_H_
#define _LOCALE_H_

#include <sys/cdefs.h>
#include <xlocale.h>

__BEGIN_DECLS

#define LC_CTYPE           0
#define LC_NUMERIC         1
#define LC_TIME            2
#define LC_COLLATE         3
#define LC_MONETARY        4
#define LC_MESSAGES        5
#define LC_ALL             6
#define LC_PAPER           7
#define LC_NAME            8
#define LC_ADDRESS         9
#define LC_TELEPHONE      10
#define LC_MEASUREMENT    11
#define LC_IDENTIFICATION 12

#define LC_CTYPE_MASK          (1 << LC_CTYPE)
#define LC_NUMERIC_MASK        (1 << LC_NUMERIC)
#define LC_TIME_MASK           (1 << LC_TIME)
#define LC_COLLATE_MASK        (1 << LC_COLLATE)
#define LC_MONETARY_MASK       (1 << LC_MONETARY)
#define LC_MESSAGES_MASK       (1 << LC_MESSAGES)
#define LC_PAPER_MASK          (1 << LC_PAPER)
#define LC_NAME_MASK           (1 << LC_NAME)
#define LC_ADDRESS_MASK        (1 << LC_ADDRESS)
#define LC_TELEPHONE_MASK      (1 << LC_TELEPHONE)
#define LC_MEASUREMENT_MASK    (1 << LC_MEASUREMENT)
#define LC_IDENTIFICATION_MASK (1 << LC_IDENTIFICATION)

#define LC_ALL_MASK (LC_CTYPE_MASK | LC_NUMERIC_MASK | LC_TIME_MASK | LC_COLLATE_MASK | \
                     LC_MONETARY_MASK | LC_MESSAGES_MASK | LC_PAPER_MASK | LC_NAME_MASK | \
                     LC_ADDRESS_MASK | LC_TELEPHONE_MASK | LC_MEASUREMENT_MASK | \
                     LC_IDENTIFICATION_MASK)

struct lconv {
    char* decimal_point;
    char* thousands_sep;
    char* grouping;
    char* int_curr_symbol;
    char* currency_symbol;
    char* mon_decimal_point;
    char* mon_thousands_sep;
    char* mon_grouping;
    char* positive_sign;
    char* negative_sign;
    char  int_frac_digits;
    char  frac_digits;
    char  p_cs_precedes;
    char  p_sep_by_space;
    char  n_cs_precedes;
    char  n_sep_by_space;
    char  p_sign_posn;
    char  n_sign_posn;
    char  int_p_cs_precedes;
    char  int_p_sep_by_space;
    char  int_n_cs_precedes;
    char  int_n_sep_by_space;
    char  int_p_sign_posn;
    char  int_n_sign_posn;
};

struct lconv* localeconv(void);

locale_t duplocale(locale_t);
void freelocale(locale_t);
locale_t newlocale(int, const char*, locale_t);
char* setlocale(int, const char*);
locale_t uselocale(locale_t);

#define LC_GLOBAL_LOCALE ((locale_t) -1L)

__END_DECLS

#endif /* _LOCALE_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/machine/endian.h
================================================
/*
 * Copyright (C) 2014 The Android Open Source Project
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *  * Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *  * Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */

#ifndef _MACHINE_ENDIAN_H_
#define _MACHINE_ENDIAN_H_

/* This file is for BSD source compatibility only. Use <endian.h> or <sys/endian.h> instead. */
#include <sys/endian.h>

#endif /* _MACHINE_ENDIAN_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/machine/ieee.h
================================================
/*	$OpenBSD: ieee.h,v 1.4 2011/11/08 17:06:51 deraadt Exp $	*/
/*	$NetBSD: ieee.h,v 1.2 2001/02/21 17:43:50 bjh21 Exp $	*/

/*
 * Copyright (c) 1992, 1993
 *	The Regents of the University of California.  All rights reserved.
 *
 * This software was developed by the Computer Systems Engineering group
 * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
 * contributed to Berkeley.
 *
 * All advertising materials mentioning features or use of this software
 * must display the following acknowledgement:
 *	This product includes software developed by the University of
 *	California, Lawrence Berkeley Laboratory.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. All advertising materials mentioning features or use of this software
 *    must display the following acknowledgement:
 *	This product includes software developed by the University of
 *	California, Berkeley and its contributors.
 * 4. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 *
 *	@(#)ieee.h	8.1 (Berkeley) 6/11/93
 */

#ifndef _MACHINE_IEEE_H_
#define _MACHINE_IEEE_H_

#include <sys/types.h>

__BEGIN_DECLS

#define SNG_EXPBITS	8
#define SNG_FRACBITS	23

#define SNG_EXP_INFNAN	255
#define SNG_EXP_BIAS	127

struct ieee_single {
  unsigned sng_frac:23;
  unsigned sng_exp:8;
  unsigned sng_sign:1;
};

#define DBL_EXPBITS	11
#define DBL_FRACHBITS	20
#define DBL_FRACLBITS	32
#define DBL_FRACBITS	52

#define DBL_EXP_INFNAN	2047
#define DBL_EXP_BIAS	1023

struct ieee_double {
  unsigned dbl_fracl;
  unsigned dbl_frach:20;
  unsigned dbl_exp:11;
  unsigned dbl_sign:1;
};

#if __LP64__

/* 64-bit Android uses ld128 long doubles. */

#define EXT_EXPBITS	15
#define EXT_FRACHBITS	16
#define EXT_FRACHMBITS	32
#define EXT_FRACLMBITS	32
#define EXT_FRACLBITS	32
#define EXT_FRACBITS	112

#define EXT_EXP_INFNAN	32767
#define EXT_EXP_BIAS	16383

#define EXT_IMPLICIT_NBIT

#define EXT_TO_ARRAY32(p, a) do { \
  (a)[0] = (uint32_t)(p)->ext_fracl; \
  (a)[1] = (uint32_t)(p)->ext_fraclm; \
  (a)[2] = (uint32_t)(p)->ext_frachm; \
  (a)[3] = (uint32_t)(p)->ext_frach; \
} while(0)

struct ieee_ext {
  unsigned ext_fracl;
  unsigned ext_fraclm;
  unsigned ext_frachm;
  unsigned ext_frach:16;
  unsigned ext_exp:15;
  unsigned ext_sign:1;
};

#endif

__END_DECLS

#endif /* _MACHINE_IEEE_H_ */


================================================
FILE: atlas-aapt/bionic/libc/include/malloc.h
================================================
/*
 * Copyright (C) 2012 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#ifndef LIBC_INCLUDE_MALLOC_H_
#define LIBC_INCLUDE_MALLOC_H_

#include <sys/cdefs.h>
#include <stddef.h>
#include <stdio.h>

__BEGIN_DECLS

extern void* malloc(size_t byte_count) __mallocfunc __wur __attribute__((alloc_size(1)));
extern void* calloc(size_t item_count, size_t item_size) __mallocfunc __wur __attribute__((alloc_size(1,2)));
extern void* realloc(void* p, size_t byte_count) __wur __attribute__((alloc_size(2)));
extern void free(void* p);

extern void* memalign(size_t alignment, size_t byte_count) __mallocfunc __wur __attribute__((alloc_size(2)));
extern size_t malloc_usable_size(const void* p);

#ifndef STRUCT_MALLINFO_DECLARED
#define STRUCT_MALLINFO_DECLARED 1
struct mallinfo {
  size_t arena;    /* Total number of non-mmapped bytes currently allocated from OS. */
  size_t ordblks;  /* Number of free chunks. */
  size_t smblks;   /* (Unused.) */
  size_t hblks;    /* (Unused.) */
  size_t hblkhd;   /* Total number of bytes in mmapped regions. */
  size_t usmblks;  /* Maximum total allocated space; greater than total if trimming has occurred. */
  size_t fsmblks;  /* (Unused.) */
 
Download .txt
Showing preview only (232K chars total). Download the full file or copy to clipboard to get everything.
gitextract_as4hsawy/

├── .github/
│   └── ISSUE_TEMPLATE.md
├── .gitignore
├── .gitmodules
├── CONTRIBUTING.md
├── LICENSE
├── NOTICE
├── README.md
├── _config.yml
├── atlas-aapt/
│   ├── .gitignore
│   ├── CMakeLists.txt
│   ├── Makefile
│   ├── README.md
│   ├── README.zh-cn.md
│   ├── UpdateAndroidSource.sh
│   ├── bionic/
│   │   └── libc/
│   │       └── include/
│   │           ├── alloca.h
│   │           ├── android/
│   │           │   ├── api-level.h
│   │           │   ├── dlext.h
│   │           │   ├── legacy_errno_inlines.h
│   │           │   ├── legacy_signal_inlines.h
│   │           │   ├── legacy_stdlib_inlines.h
│   │           │   ├── legacy_sys_atomics_inlines.h
│   │           │   ├── legacy_sys_stat_inlines.h
│   │           │   ├── legacy_termios_inlines.h
│   │           │   └── set_abort_message.h
│   │           ├── ar.h
│   │           ├── arpa/
│   │           │   ├── inet.h
│   │           │   ├── nameser.h
│   │           │   ├── nameser_compat.h
│   │           │   └── telnet.h
│   │           ├── assert.h
│   │           ├── bits/
│   │           │   ├── lockf.h
│   │           │   ├── posix_limits.h
│   │           │   ├── pthread_types.h
│   │           │   ├── timespec.h
│   │           │   └── wchar_limits.h
│   │           ├── byteswap.h
│   │           ├── ctype.h
│   │           ├── dirent.h
│   │           ├── dlfcn.h
│   │           ├── elf.h
│   │           ├── endian.h
│   │           ├── err.h
│   │           ├── errno.h
│   │           ├── error.h
│   │           ├── fcntl.h
│   │           ├── features.h
│   │           ├── fnmatch.h
│   │           ├── fts.h
│   │           ├── ftw.h
│   │           ├── getopt.h
│   │           ├── grp.h
│   │           ├── ifaddrs.h
│   │           ├── inttypes.h
│   │           ├── lastlog.h
│   │           ├── libgen.h
│   │           ├── limits.h
│   │           ├── link.h
│   │           ├── locale.h
│   │           ├── machine/
│   │           │   ├── endian.h
│   │           │   └── ieee.h
│   │           ├── malloc.h
│   │           ├── memory.h
│   │           ├── mntent.h
│   │           ├── net/
│   │           │   ├── ethernet.h
│   │           │   ├── ethertypes.h
│   │           │   ├── if.h
│   │           │   ├── if_arp.h
│   │           │   ├── if_ether.h
│   │           │   ├── if_ieee1394.h
│   │           │   ├── if_packet.h
│   │           │   ├── if_types.h
│   │           │   └── route.h
│   │           ├── netdb.h
│   │           ├── netinet/
│   │           │   ├── ether.h
│   │           │   ├── icmp6.h
│   │           │   ├── if_ether.h
│   │           │   ├── in.h
│   │           │   ├── in6.h
│   │           │   ├── in_systm.h
│   │           │   ├── ip.h
│   │           │   ├── ip6.h
│   │           │   ├── ip_icmp.h
│   │           │   ├── tcp.h
│   │           │   └── udp.h
│   │           ├── netpacket/
│   │           │   └── packet.h
│   │           ├── nsswitch.h
│   │           ├── paths.h
│   │           ├── poll.h
│   │           ├── pthread.h
│   │           ├── pty.h
│   │           ├── pwd.h
│   │           ├── regex.h
│   │           ├── resolv.h
│   │           ├── sched.h
│   │           ├── search.h
│   │           ├── semaphore.h
│   │           ├── setjmp.h
│   │           ├── sgtty.h
│   │           ├── signal.h
│   │           ├── stdatomic.h
│   │           ├── stdint.h
│   │           ├── stdio.h
│   │           ├── stdio_ext.h
│   │           ├── stdlib.h
│   │           ├── string.h
│   │           ├── strings.h
│   │           ├── sys/
│   │           │   ├── _errdefs.h
│   │           │   ├── _sigdefs.h
│   │           │   ├── _system_properties.h
│   │           │   ├── atomics.h
│   │           │   ├── auxv.h
│   │           │   ├── cachectl.h
│   │           │   ├── capability.h
│   │           │   ├── cdefs.h
│   │           │   ├── endian.h
│   │           │   ├── epoll.h
│   │           │   ├── errno.h
│   │           │   ├── eventfd.h
│   │           │   ├── fcntl.h
│   │           │   ├── file.h
│   │           │   ├── fsuid.h
│   │           │   ├── glibc-syscalls.h
│   │           │   ├── inotify.h
│   │           │   ├── ioctl.h
│   │           │   ├── ioctl_compat.h
│   │           │   ├── ipc.h
│   │           │   ├── klog.h
│   │           │   ├── limits.h
│   │           │   ├── mman.h
│   │           │   ├── mount.h
│   │           │   ├── msg.h
│   │           │   ├── param.h
│   │           │   ├── personality.h
│   │           │   ├── poll.h
│   │           │   ├── prctl.h
│   │           │   ├── procfs.h
│   │           │   ├── ptrace.h
│   │           │   ├── queue.h
│   │           │   ├── reboot.h
│   │           │   ├── reg.h
│   │           │   ├── resource.h
│   │           │   ├── select.h
│   │           │   ├── sem.h
│   │           │   ├── sendfile.h
│   │           │   ├── signal.h
│   │           │   ├── signalfd.h
│   │           │   ├── socket.h
│   │           │   ├── socketcalls.h
│   │           │   ├── stat.h
│   │           │   ├── statfs.h
│   │           │   ├── statvfs.h
│   │           │   ├── swap.h
│   │           │   ├── syscall.h
│   │           │   ├── sysconf.h
│   │           │   ├── sysinfo.h
│   │           │   ├── syslimits.h
│   │           │   ├── syslog.h
│   │           │   ├── sysmacros.h
│   │           │   ├── system_properties.h
│   │           │   ├── time.h
│   │           │   ├── timerfd.h
│   │           │   ├── times.h
│   │           │   ├── timex.h
│   │           │   ├── ttychars.h
│   │           │   ├── ttydefaults.h
│   │           │   ├── ttydev.h
│   │           │   ├── types.h
│   │           │   ├── ucontext.h
│   │           │   ├── uio.h
│   │           │   ├── un.h
│   │           │   ├── unistd.h
│   │           │   ├── user.h
│   │           │   ├── utime.h
│   │           │   ├── utsname.h
│   │           │   ├── vfs.h
│   │           │   ├── vt.h
│   │           │   ├── wait.h
│   │           │   └── xattr.h
│   │           ├── syscall.h
│   │           ├── sysexits.h
│   │           ├── syslog.h
│   │           ├── termio.h
│   │           ├── termios.h
│   │           ├── time.h
│   │           ├── time64.h
│   │           ├── uchar.h
│   │           ├── ucontext.h
│   │           ├── unistd.h
│   │           ├── util.h
│   │           ├── utime.h
│   │           ├── utmp.h
│   │           ├── wait.h
│   │           ├── wchar.h
│   │           ├── wctype.h
│   │           └── xlocale.h
│   ├── build_ShakaAapt_all_in_linux.sh
│   ├── build_ShakaAapt_all_in_maxos.sh
│   ├── external/
│   │   ├── compiler-rt/
│   │   │   ├── .arcconfig
│   │   │   ├── .gitignore
│   │   │   ├── Android.bp
│   │   │   ├── Android.mk
│   │   │   ├── CMakeLists.txt
│   │   │   ├── CODE_OWNERS.TXT
│   │   │   ├── CREDITS.TXT
│   │   │   ├── LICENSE.TXT
│   │   │   ├── MODULE_LICENSE_MIT
│   │   │   ├── Makefile
│   │   │   ├── NOTICE
│   │   │   ├── README.android
│   │   │   ├── README.txt
│   │   │   ├── cmake/
│   │   │   │   ├── Modules/
│   │   │   │   │   ├── AddCompilerRT.cmake
│   │   │   │   │   ├── CompilerRTCompile.cmake
│   │   │   │   │   ├── CompilerRTDarwinUtils.cmake
│   │   │   │   │   ├── CompilerRTLink.cmake
│   │   │   │   │   ├── CompilerRTUtils.cmake
│   │   │   │   │   └── SanitizerUtils.cmake
│   │   │   │   └── config-ix.cmake
│   │   │   ├── include/
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   └── sanitizer/
│   │   │   │       ├── allocator_interface.h
│   │   │   │       ├── asan_interface.h
│   │   │   │       ├── common_interface_defs.h
│   │   │   │       ├── coverage_interface.h
│   │   │   │       ├── dfsan_interface.h
│   │   │   │       ├── linux_syscall_hooks.h
│   │   │   │       ├── lsan_interface.h
│   │   │   │       ├── msan_interface.h
│   │   │   │       └── tsan_interface_atomic.h
│   │   │   ├── lib/
│   │   │   │   ├── BlocksRuntime/
│   │   │   │   │   ├── Block.h
│   │   │   │   │   ├── Block_private.h
│   │   │   │   │   ├── data.c
│   │   │   │   │   └── runtime.c
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   ├── Makefile.mk
│   │   │   │   ├── asan/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── Android.mk
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   ├── README.txt
│   │   │   │   │   ├── asan.syms.extra
│   │   │   │   │   ├── asan_activation.cc
│   │   │   │   │   ├── asan_activation.h
│   │   │   │   │   ├── asan_activation_flags.inc
│   │   │   │   │   ├── asan_allocator.cc
│   │   │   │   │   ├── asan_allocator.h
│   │   │   │   │   ├── asan_android_stub.cc
│   │   │   │   │   ├── asan_blacklist.txt
│   │   │   │   │   ├── asan_debugging.cc
│   │   │   │   │   ├── asan_fake_stack.cc
│   │   │   │   │   ├── asan_fake_stack.h
│   │   │   │   │   ├── asan_flags.cc
│   │   │   │   │   ├── asan_flags.h
│   │   │   │   │   ├── asan_flags.inc
│   │   │   │   │   ├── asan_globals.cc
│   │   │   │   │   ├── asan_init_version.h
│   │   │   │   │   ├── asan_interceptors.cc
│   │   │   │   │   ├── asan_interceptors.h
│   │   │   │   │   ├── asan_interface_internal.h
│   │   │   │   │   ├── asan_internal.h
│   │   │   │   │   ├── asan_linux.cc
│   │   │   │   │   ├── asan_lock.h
│   │   │   │   │   ├── asan_mac.cc
│   │   │   │   │   ├── asan_malloc_linux.cc
│   │   │   │   │   ├── asan_malloc_mac.cc
│   │   │   │   │   ├── asan_malloc_win.cc
│   │   │   │   │   ├── asan_mapping.h
│   │   │   │   │   ├── asan_new_delete.cc
│   │   │   │   │   ├── asan_poisoning.cc
│   │   │   │   │   ├── asan_poisoning.h
│   │   │   │   │   ├── asan_posix.cc
│   │   │   │   │   ├── asan_preinit.cc
│   │   │   │   │   ├── asan_report.cc
│   │   │   │   │   ├── asan_report.h
│   │   │   │   │   ├── asan_rtl.cc
│   │   │   │   │   ├── asan_stack.cc
│   │   │   │   │   ├── asan_stack.h
│   │   │   │   │   ├── asan_stats.cc
│   │   │   │   │   ├── asan_stats.h
│   │   │   │   │   ├── asan_suppressions.cc
│   │   │   │   │   ├── asan_suppressions.h
│   │   │   │   │   ├── asan_thread.cc
│   │   │   │   │   ├── asan_thread.h
│   │   │   │   │   ├── asan_win.cc
│   │   │   │   │   ├── asan_win_dll_thunk.cc
│   │   │   │   │   ├── asan_win_dynamic_runtime_thunk.cc
│   │   │   │   │   ├── asanwrapper.cc
│   │   │   │   │   ├── scripts/
│   │   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   │   ├── asan_device_setup
│   │   │   │   │   │   ├── asan_symbolize.py
│   │   │   │   │   │   └── symbolize.py
│   │   │   │   │   └── tests/
│   │   │   │   │       ├── CMakeLists.txt
│   │   │   │   │       ├── asan_asm_test.cc
│   │   │   │   │       ├── asan_benchmarks_test.cc
│   │   │   │   │       ├── asan_exceptions_test.cc
│   │   │   │   │       ├── asan_fake_stack_test.cc
│   │   │   │   │       ├── asan_globals_test.cc
│   │   │   │   │       ├── asan_interface_test.cc
│   │   │   │   │       ├── asan_mac_test.cc
│   │   │   │   │       ├── asan_mac_test.h
│   │   │   │   │       ├── asan_mac_test_helpers.mm
│   │   │   │   │       ├── asan_mem_test.cc
│   │   │   │   │       ├── asan_noinst_test.cc
│   │   │   │   │       ├── asan_oob_test.cc
│   │   │   │   │       ├── asan_racy_double_free_test.cc
│   │   │   │   │       ├── asan_str_test.cc
│   │   │   │   │       ├── asan_test.cc
│   │   │   │   │       ├── asan_test.ignore
│   │   │   │   │       ├── asan_test_config.h
│   │   │   │   │       ├── asan_test_main.cc
│   │   │   │   │       └── asan_test_utils.h
│   │   │   │   ├── builtins/
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── Darwin-excludes/
│   │   │   │   │   │   ├── 10.4-x86_64.txt
│   │   │   │   │   │   ├── 10.4.txt
│   │   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   │   ├── README.TXT
│   │   │   │   │   │   ├── ios-armv7.txt
│   │   │   │   │   │   ├── ios-armv7s.txt
│   │   │   │   │   │   ├── ios.txt
│   │   │   │   │   │   ├── ios6-armv7.txt
│   │   │   │   │   │   ├── ios6-armv7s.txt
│   │   │   │   │   │   ├── ios7-arm64.txt
│   │   │   │   │   │   ├── iossim-i386.txt
│   │   │   │   │   │   ├── iossim-x86_64.txt
│   │   │   │   │   │   ├── iossim.txt
│   │   │   │   │   │   ├── osx-i386.txt
│   │   │   │   │   │   ├── osx-x86_64.txt
│   │   │   │   │   │   └── osx.txt
│   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   ├── README.txt
│   │   │   │   │   ├── absvdi2.c
│   │   │   │   │   ├── absvsi2.c
│   │   │   │   │   ├── absvti2.c
│   │   │   │   │   ├── adddf3.c
│   │   │   │   │   ├── addsf3.c
│   │   │   │   │   ├── addtf3.c
│   │   │   │   │   ├── addvdi3.c
│   │   │   │   │   ├── addvsi3.c
│   │   │   │   │   ├── addvti3.c
│   │   │   │   │   ├── apple_versioning.c
│   │   │   │   │   ├── arm/
│   │   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   │   ├── adddf3vfp.S
│   │   │   │   │   │   ├── addsf3vfp.S
│   │   │   │   │   │   ├── aeabi_cdcmp.S
│   │   │   │   │   │   ├── aeabi_cdcmpeq_check_nan.c
│   │   │   │   │   │   ├── aeabi_cfcmp.S
│   │   │   │   │   │   ├── aeabi_cfcmpeq_check_nan.c
│   │   │   │   │   │   ├── aeabi_dcmp.S
│   │   │   │   │   │   ├── aeabi_div0.c
│   │   │   │   │   │   ├── aeabi_drsub.c
│   │   │   │   │   │   ├── aeabi_fcmp.S
│   │   │   │   │   │   ├── aeabi_frsub.c
│   │   │   │   │   │   ├── aeabi_idivmod.S
│   │   │   │   │   │   ├── aeabi_ldivmod.S
│   │   │   │   │   │   ├── aeabi_memcmp.S
│   │   │   │   │   │   ├── aeabi_memcpy.S
│   │   │   │   │   │   ├── aeabi_memmove.S
│   │   │   │   │   │   ├── aeabi_memset.S
│   │   │   │   │   │   ├── aeabi_uidivmod.S
│   │   │   │   │   │   ├── aeabi_uldivmod.S
│   │   │   │   │   │   ├── bswapdi2.S
│   │   │   │   │   │   ├── bswapsi2.S
│   │   │   │   │   │   ├── clzdi2.S
│   │   │   │   │   │   ├── clzsi2.S
│   │   │   │   │   │   ├── comparesf2.S
│   │   │   │   │   │   ├── divdf3vfp.S
│   │   │   │   │   │   ├── divmodsi4.S
│   │   │   │   │   │   ├── divsf3vfp.S
│   │   │   │   │   │   ├── divsi3.S
│   │   │   │   │   │   ├── eqdf2vfp.S
│   │   │   │   │   │   ├── eqsf2vfp.S
│   │   │   │   │   │   ├── extendsfdf2vfp.S
│   │   │   │   │   │   ├── fixdfsivfp.S
│   │   │   │   │   │   ├── fixsfsivfp.S
│   │   │   │   │   │   ├── fixunsdfsivfp.S
│   │   │   │   │   │   ├── fixunssfsivfp.S
│   │   │   │   │   │   ├── floatsidfvfp.S
│   │   │   │   │   │   ├── floatsisfvfp.S
│   │   │   │   │   │   ├── floatunssidfvfp.S
│   │   │   │   │   │   ├── floatunssisfvfp.S
│   │   │   │   │   │   ├── gedf2vfp.S
│   │   │   │   │   │   ├── gesf2vfp.S
│   │   │   │   │   │   ├── gtdf2vfp.S
│   │   │   │   │   │   ├── gtsf2vfp.S
│   │   │   │   │   │   ├── ledf2vfp.S
│   │   │   │   │   │   ├── lesf2vfp.S
│   │   │   │   │   │   ├── ltdf2vfp.S
│   │   │   │   │   │   ├── ltsf2vfp.S
│   │   │   │   │   │   ├── modsi3.S
│   │   │   │   │   │   ├── muldf3vfp.S
│   │   │   │   │   │   ├── mulsf3vfp.S
│   │   │   │   │   │   ├── nedf2vfp.S
│   │   │   │   │   │   ├── negdf2vfp.S
│   │   │   │   │   │   ├── negsf2vfp.S
│   │   │   │   │   │   ├── nesf2vfp.S
│   │   │   │   │   │   ├── restore_vfp_d8_d15_regs.S
│   │   │   │   │   │   ├── save_vfp_d8_d15_regs.S
│   │   │   │   │   │   ├── softfloat-alias.list
│   │   │   │   │   │   ├── subdf3vfp.S
│   │   │   │   │   │   ├── subsf3vfp.S
│   │   │   │   │   │   ├── switch16.S
│   │   │   │   │   │   ├── switch32.S
│   │   │   │   │   │   ├── switch8.S
│   │   │   │   │   │   ├── switchu8.S
│   │   │   │   │   │   ├── sync-ops.h
│   │   │   │   │   │   ├── sync_fetch_and_add_4.S
│   │   │   │   │   │   ├── sync_fetch_and_add_8.S
│   │   │   │   │   │   ├── sync_fetch_and_and_4.S
│   │   │   │   │   │   ├── sync_fetch_and_and_8.S
│   │   │   │   │   │   ├── sync_fetch_and_max_4.S
│   │   │   │   │   │   ├── sync_fetch_and_max_8.S
│   │   │   │   │   │   ├── sync_fetch_and_min_4.S
│   │   │   │   │   │   ├── sync_fetch_and_min_8.S
│   │   │   │   │   │   ├── sync_fetch_and_nand_4.S
│   │   │   │   │   │   ├── sync_fetch_and_nand_8.S
│   │   │   │   │   │   ├── sync_fetch_and_or_4.S
│   │   │   │   │   │   ├── sync_fetch_and_or_8.S
│   │   │   │   │   │   ├── sync_fetch_and_sub_4.S
│   │   │   │   │   │   ├── sync_fetch_and_sub_8.S
│   │   │   │   │   │   ├── sync_fetch_and_umax_4.S
│   │   │   │   │   │   ├── sync_fetch_and_umax_8.S
│   │   │   │   │   │   ├── sync_fetch_and_umin_4.S
│   │   │   │   │   │   ├── sync_fetch_and_umin_8.S
│   │   │   │   │   │   ├── sync_fetch_and_xor_4.S
│   │   │   │   │   │   ├── sync_fetch_and_xor_8.S
│   │   │   │   │   │   ├── sync_synchronize.S
│   │   │   │   │   │   ├── truncdfsf2vfp.S
│   │   │   │   │   │   ├── udivmodsi4.S
│   │   │   │   │   │   ├── udivsi3.S
│   │   │   │   │   │   ├── umodsi3.S
│   │   │   │   │   │   ├── unorddf2vfp.S
│   │   │   │   │   │   └── unordsf2vfp.S
│   │   │   │   │   ├── arm64/
│   │   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   │   └── dummy.c
│   │   │   │   │   ├── armv6m/
│   │   │   │   │   │   └── Makefile.mk
│   │   │   │   │   ├── ashldi3.c
│   │   │   │   │   ├── ashlti3.c
│   │   │   │   │   ├── ashrdi3.c
│   │   │   │   │   ├── ashrti3.c
│   │   │   │   │   ├── assembly.h
│   │   │   │   │   ├── atomic.c
│   │   │   │   │   ├── atomic_flag_clear.c
│   │   │   │   │   ├── atomic_flag_clear_explicit.c
│   │   │   │   │   ├── atomic_flag_test_and_set.c
│   │   │   │   │   ├── atomic_flag_test_and_set_explicit.c
│   │   │   │   │   ├── atomic_signal_fence.c
│   │   │   │   │   ├── atomic_thread_fence.c
│   │   │   │   │   ├── clear_cache.c
│   │   │   │   │   ├── clzdi2.c
│   │   │   │   │   ├── clzsi2.c
│   │   │   │   │   ├── clzti2.c
│   │   │   │   │   ├── cmpdi2.c
│   │   │   │   │   ├── cmpti2.c
│   │   │   │   │   ├── comparedf2.c
│   │   │   │   │   ├── comparesf2.c
│   │   │   │   │   ├── comparetf2.c
│   │   │   │   │   ├── ctzdi2.c
│   │   │   │   │   ├── ctzsi2.c
│   │   │   │   │   ├── ctzti2.c
│   │   │   │   │   ├── divdc3.c
│   │   │   │   │   ├── divdf3.c
│   │   │   │   │   ├── divdi3.c
│   │   │   │   │   ├── divmoddi4.c
│   │   │   │   │   ├── divmodsi4.c
│   │   │   │   │   ├── divsc3.c
│   │   │   │   │   ├── divsf3.c
│   │   │   │   │   ├── divsi3.c
│   │   │   │   │   ├── divtc3.c
│   │   │   │   │   ├── divtf3.c
│   │   │   │   │   ├── divti3.c
│   │   │   │   │   ├── divxc3.c
│   │   │   │   │   ├── emutls.c
│   │   │   │   │   ├── enable_execute_stack.c
│   │   │   │   │   ├── eprintf.c
│   │   │   │   │   ├── extenddftf2.c
│   │   │   │   │   ├── extendhfsf2.c
│   │   │   │   │   ├── extendsfdf2.c
│   │   │   │   │   ├── extendsftf2.c
│   │   │   │   │   ├── ffsdi2.c
│   │   │   │   │   ├── ffsti2.c
│   │   │   │   │   ├── fixdfdi.c
│   │   │   │   │   ├── fixdfsi.c
│   │   │   │   │   ├── fixdfti.c
│   │   │   │   │   ├── fixsfdi.c
│   │   │   │   │   ├── fixsfsi.c
│   │   │   │   │   ├── fixsfti.c
│   │   │   │   │   ├── fixtfdi.c
│   │   │   │   │   ├── fixtfsi.c
│   │   │   │   │   ├── fixtfti.c
│   │   │   │   │   ├── fixunsdfdi.c
│   │   │   │   │   ├── fixunsdfsi.c
│   │   │   │   │   ├── fixunsdfti.c
│   │   │   │   │   ├── fixunssfdi.c
│   │   │   │   │   ├── fixunssfsi.c
│   │   │   │   │   ├── fixunssfti.c
│   │   │   │   │   ├── fixunstfdi.c
│   │   │   │   │   ├── fixunstfsi.c
│   │   │   │   │   ├── fixunstfti.c
│   │   │   │   │   ├── fixunsxfdi.c
│   │   │   │   │   ├── fixunsxfsi.c
│   │   │   │   │   ├── fixunsxfti.c
│   │   │   │   │   ├── fixxfdi.c
│   │   │   │   │   ├── fixxfti.c
│   │   │   │   │   ├── floatdidf.c
│   │   │   │   │   ├── floatdisf.c
│   │   │   │   │   ├── floatditf.c
│   │   │   │   │   ├── floatdixf.c
│   │   │   │   │   ├── floatsidf.c
│   │   │   │   │   ├── floatsisf.c
│   │   │   │   │   ├── floatsitf.c
│   │   │   │   │   ├── floattidf.c
│   │   │   │   │   ├── floattisf.c
│   │   │   │   │   ├── floattixf.c
│   │   │   │   │   ├── floatundidf.c
│   │   │   │   │   ├── floatundisf.c
│   │   │   │   │   ├── floatunditf.c
│   │   │   │   │   ├── floatundixf.c
│   │   │   │   │   ├── floatunsidf.c
│   │   │   │   │   ├── floatunsisf.c
│   │   │   │   │   ├── floatunsitf.c
│   │   │   │   │   ├── floatuntidf.c
│   │   │   │   │   ├── floatuntisf.c
│   │   │   │   │   ├── floatuntixf.c
│   │   │   │   │   ├── fp_add_impl.inc
│   │   │   │   │   ├── fp_extend.h
│   │   │   │   │   ├── fp_extend_impl.inc
│   │   │   │   │   ├── fp_fixint_impl.inc
│   │   │   │   │   ├── fp_fixuint_impl.inc
│   │   │   │   │   ├── fp_lib.h
│   │   │   │   │   ├── fp_mul_impl.inc
│   │   │   │   │   ├── fp_trunc.h
│   │   │   │   │   ├── fp_trunc_impl.inc
│   │   │   │   │   ├── gcc_personality_v0.c
│   │   │   │   │   ├── i386/
│   │   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   │   ├── ashldi3.S
│   │   │   │   │   │   ├── ashrdi3.S
│   │   │   │   │   │   ├── chkstk.S
│   │   │   │   │   │   ├── chkstk2.S
│   │   │   │   │   │   ├── divdi3.S
│   │   │   │   │   │   ├── floatdidf.S
│   │   │   │   │   │   ├── floatdisf.S
│   │   │   │   │   │   ├── floatdixf.S
│   │   │   │   │   │   ├── floatundidf.S
│   │   │   │   │   │   ├── floatundisf.S
│   │   │   │   │   │   ├── floatundixf.S
│   │   │   │   │   │   ├── lshrdi3.S
│   │   │   │   │   │   ├── moddi3.S
│   │   │   │   │   │   ├── muldi3.S
│   │   │   │   │   │   ├── udivdi3.S
│   │   │   │   │   │   └── umoddi3.S
│   │   │   │   │   ├── int_endianness.h
│   │   │   │   │   ├── int_lib.h
│   │   │   │   │   ├── int_math.h
│   │   │   │   │   ├── int_types.h
│   │   │   │   │   ├── int_util.c
│   │   │   │   │   ├── int_util.h
│   │   │   │   │   ├── lshrdi3.c
│   │   │   │   │   ├── lshrti3.c
│   │   │   │   │   ├── macho_embedded/
│   │   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   │   ├── arm.txt
│   │   │   │   │   │   ├── common.txt
│   │   │   │   │   │   ├── i386.txt
│   │   │   │   │   │   ├── thumb2-64.txt
│   │   │   │   │   │   └── thumb2.txt
│   │   │   │   │   ├── moddi3.c
│   │   │   │   │   ├── modsi3.c
│   │   │   │   │   ├── modti3.c
│   │   │   │   │   ├── muldc3.c
│   │   │   │   │   ├── muldf3.c
│   │   │   │   │   ├── muldi3.c
│   │   │   │   │   ├── mulodi4.c
│   │   │   │   │   ├── mulosi4.c
│   │   │   │   │   ├── muloti4.c
│   │   │   │   │   ├── mulsc3.c
│   │   │   │   │   ├── mulsf3.c
│   │   │   │   │   ├── multc3.c
│   │   │   │   │   ├── multf3.c
│   │   │   │   │   ├── multi3.c
│   │   │   │   │   ├── mulvdi3.c
│   │   │   │   │   ├── mulvsi3.c
│   │   │   │   │   ├── mulvti3.c
│   │   │   │   │   ├── mulxc3.c
│   │   │   │   │   ├── negdf2.c
│   │   │   │   │   ├── negdi2.c
│   │   │   │   │   ├── negsf2.c
│   │   │   │   │   ├── negti2.c
│   │   │   │   │   ├── negvdi2.c
│   │   │   │   │   ├── negvsi2.c
│   │   │   │   │   ├── negvti2.c
│   │   │   │   │   ├── paritydi2.c
│   │   │   │   │   ├── paritysi2.c
│   │   │   │   │   ├── parityti2.c
│   │   │   │   │   ├── popcountdi2.c
│   │   │   │   │   ├── popcountsi2.c
│   │   │   │   │   ├── popcountti2.c
│   │   │   │   │   ├── powidf2.c
│   │   │   │   │   ├── powisf2.c
│   │   │   │   │   ├── powitf2.c
│   │   │   │   │   ├── powixf2.c
│   │   │   │   │   ├── ppc/
│   │   │   │   │   │   ├── DD.h
│   │   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   │   ├── divtc3.c
│   │   │   │   │   │   ├── fixtfdi.c
│   │   │   │   │   │   ├── fixunstfdi.c
│   │   │   │   │   │   ├── floatditf.c
│   │   │   │   │   │   ├── floatunditf.c
│   │   │   │   │   │   ├── gcc_qadd.c
│   │   │   │   │   │   ├── gcc_qdiv.c
│   │   │   │   │   │   ├── gcc_qmul.c
│   │   │   │   │   │   ├── gcc_qsub.c
│   │   │   │   │   │   ├── multc3.c
│   │   │   │   │   │   ├── restFP.S
│   │   │   │   │   │   └── saveFP.S
│   │   │   │   │   ├── subdf3.c
│   │   │   │   │   ├── subsf3.c
│   │   │   │   │   ├── subtf3.c
│   │   │   │   │   ├── subvdi3.c
│   │   │   │   │   ├── subvsi3.c
│   │   │   │   │   ├── subvti3.c
│   │   │   │   │   ├── trampoline_setup.c
│   │   │   │   │   ├── truncdfhf2.c
│   │   │   │   │   ├── truncdfsf2.c
│   │   │   │   │   ├── truncsfhf2.c
│   │   │   │   │   ├── trunctfdf2.c
│   │   │   │   │   ├── trunctfsf2.c
│   │   │   │   │   ├── ucmpdi2.c
│   │   │   │   │   ├── ucmpti2.c
│   │   │   │   │   ├── udivdi3.c
│   │   │   │   │   ├── udivmoddi4.c
│   │   │   │   │   ├── udivmodsi4.c
│   │   │   │   │   ├── udivmodti4.c
│   │   │   │   │   ├── udivsi3.c
│   │   │   │   │   ├── udivti3.c
│   │   │   │   │   ├── umoddi3.c
│   │   │   │   │   ├── umodsi3.c
│   │   │   │   │   ├── umodti3.c
│   │   │   │   │   └── x86_64/
│   │   │   │   │       ├── Makefile.mk
│   │   │   │   │       ├── chkstk.S
│   │   │   │   │       ├── chkstk2.S
│   │   │   │   │       ├── floatdidf.c
│   │   │   │   │       ├── floatdisf.c
│   │   │   │   │       ├── floatdixf.c
│   │   │   │   │       ├── floatundidf.S
│   │   │   │   │       ├── floatundisf.S
│   │   │   │   │       └── floatundixf.S
│   │   │   │   ├── cfi/
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── cfi.cc
│   │   │   │   │   └── cfi_blacklist.txt
│   │   │   │   ├── dfsan/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── dfsan.cc
│   │   │   │   │   ├── dfsan.h
│   │   │   │   │   ├── dfsan.syms.extra
│   │   │   │   │   ├── dfsan_custom.cc
│   │   │   │   │   ├── dfsan_flags.inc
│   │   │   │   │   ├── dfsan_interceptors.cc
│   │   │   │   │   ├── dfsan_platform.h
│   │   │   │   │   ├── done_abilist.txt
│   │   │   │   │   ├── libc_ubuntu1404_abilist.txt
│   │   │   │   │   └── scripts/
│   │   │   │   │       ├── build-libc-list.py
│   │   │   │   │       └── check_custom_wrappers.sh
│   │   │   │   ├── interception/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── Android.mk
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   ├── interception.h
│   │   │   │   │   ├── interception_linux.cc
│   │   │   │   │   ├── interception_linux.h
│   │   │   │   │   ├── interception_mac.cc
│   │   │   │   │   ├── interception_mac.h
│   │   │   │   │   ├── interception_type_test.cc
│   │   │   │   │   ├── interception_win.cc
│   │   │   │   │   └── interception_win.h
│   │   │   │   ├── lsan/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   ├── lsan.cc
│   │   │   │   │   ├── lsan.h
│   │   │   │   │   ├── lsan_allocator.cc
│   │   │   │   │   ├── lsan_allocator.h
│   │   │   │   │   ├── lsan_common.cc
│   │   │   │   │   ├── lsan_common.h
│   │   │   │   │   ├── lsan_common_linux.cc
│   │   │   │   │   ├── lsan_flags.inc
│   │   │   │   │   ├── lsan_interceptors.cc
│   │   │   │   │   ├── lsan_preinit.cc
│   │   │   │   │   ├── lsan_thread.cc
│   │   │   │   │   └── lsan_thread.h
│   │   │   │   ├── msan/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── msan.cc
│   │   │   │   │   ├── msan.h
│   │   │   │   │   ├── msan.syms.extra
│   │   │   │   │   ├── msan_allocator.cc
│   │   │   │   │   ├── msan_allocator.h
│   │   │   │   │   ├── msan_blacklist.txt
│   │   │   │   │   ├── msan_chained_origin_depot.cc
│   │   │   │   │   ├── msan_chained_origin_depot.h
│   │   │   │   │   ├── msan_flags.h
│   │   │   │   │   ├── msan_flags.inc
│   │   │   │   │   ├── msan_interceptors.cc
│   │   │   │   │   ├── msan_interface_internal.h
│   │   │   │   │   ├── msan_linux.cc
│   │   │   │   │   ├── msan_new_delete.cc
│   │   │   │   │   ├── msan_origin.h
│   │   │   │   │   ├── msan_poisoning.cc
│   │   │   │   │   ├── msan_poisoning.h
│   │   │   │   │   ├── msan_report.cc
│   │   │   │   │   ├── msan_thread.cc
│   │   │   │   │   ├── msan_thread.h
│   │   │   │   │   └── tests/
│   │   │   │   │       ├── CMakeLists.txt
│   │   │   │   │       ├── msan_loadable.cc
│   │   │   │   │       ├── msan_test.cc
│   │   │   │   │       ├── msan_test_config.h
│   │   │   │   │       └── msan_test_main.cc
│   │   │   │   ├── profile/
│   │   │   │   │   ├── Android.mk
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── GCDAProfiling.c
│   │   │   │   │   ├── InstrProfData.inc
│   │   │   │   │   ├── InstrProfiling.c
│   │   │   │   │   ├── InstrProfiling.h
│   │   │   │   │   ├── InstrProfilingBuffer.c
│   │   │   │   │   ├── InstrProfilingFile.c
│   │   │   │   │   ├── InstrProfilingInternal.h
│   │   │   │   │   ├── InstrProfilingPlatformDarwin.c
│   │   │   │   │   ├── InstrProfilingPlatformLinux.c
│   │   │   │   │   ├── InstrProfilingPlatformOther.c
│   │   │   │   │   ├── InstrProfilingPort.h
│   │   │   │   │   ├── InstrProfilingRuntime.cc
│   │   │   │   │   ├── InstrProfilingUtil.c
│   │   │   │   │   ├── InstrProfilingUtil.h
│   │   │   │   │   ├── InstrProfilingValue.c
│   │   │   │   │   ├── InstrProfilingWriter.c
│   │   │   │   │   └── Makefile.mk
│   │   │   │   ├── safestack/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   └── safestack.cc
│   │   │   │   ├── sanitizer_common/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── Android.mk
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── Makefile.mk
│   │   │   │   │   ├── sanitizer_addrhashmap.h
│   │   │   │   │   ├── sanitizer_allocator.cc
│   │   │   │   │   ├── sanitizer_allocator.h
│   │   │   │   │   ├── sanitizer_allocator_interface.h
│   │   │   │   │   ├── sanitizer_allocator_internal.h
│   │   │   │   │   ├── sanitizer_asm.h
│   │   │   │   │   ├── sanitizer_atomic.h
│   │   │   │   │   ├── sanitizer_atomic_clang.h
│   │   │   │   │   ├── sanitizer_atomic_clang_other.h
│   │   │   │   │   ├── sanitizer_atomic_clang_x86.h
│   │   │   │   │   ├── sanitizer_atomic_msvc.h
│   │   │   │   │   ├── sanitizer_bitvector.h
│   │   │   │   │   ├── sanitizer_bvgraph.h
│   │   │   │   │   ├── sanitizer_common.cc
│   │   │   │   │   ├── sanitizer_common.h
│   │   │   │   │   ├── sanitizer_common_interceptors.inc
│   │   │   │   │   ├── sanitizer_common_interceptors_format.inc
│   │   │   │   │   ├── sanitizer_common_interceptors_ioctl.inc
│   │   │   │   │   ├── sanitizer_common_libcdep.cc
│   │   │   │   │   ├── sanitizer_common_nolibc.cc
│   │   │   │   │   ├── sanitizer_common_syscalls.inc
│   │   │   │   │   ├── sanitizer_coverage_libcdep.cc
│   │   │   │   │   ├── sanitizer_coverage_mapping_libcdep.cc
│   │   │   │   │   ├── sanitizer_deadlock_detector.h
│   │   │   │   │   ├── sanitizer_deadlock_detector1.cc
│   │   │   │   │   ├── sanitizer_deadlock_detector2.cc
│   │   │   │   │   ├── sanitizer_deadlock_detector_interface.h
│   │   │   │   │   ├── sanitizer_flag_parser.cc
│   │   │   │   │   ├── sanitizer_flag_parser.h
│   │   │   │   │   ├── sanitizer_flags.cc
│   │   │   │   │   ├── sanitizer_flags.h
│   │   │   │   │   ├── sanitizer_flags.inc
│   │   │   │   │   ├── sanitizer_freebsd.h
│   │   │   │   │   ├── sanitizer_interface_internal.h
│   │   │   │   │   ├── sanitizer_internal_defs.h
│   │   │   │   │   ├── sanitizer_lfstack.h
│   │   │   │   │   ├── sanitizer_libc.cc
│   │   │   │   │   ├── sanitizer_libc.h
│   │   │   │   │   ├── sanitizer_libignore.cc
│   │   │   │   │   ├── sanitizer_libignore.h
│   │   │   │   │   ├── sanitizer_linux.cc
│   │   │   │   │   ├── sanitizer_linux.h
│   │   │   │   │   ├── sanitizer_linux_libcdep.cc
│   │   │   │   │   ├── sanitizer_list.h
│   │   │   │   │   ├── sanitizer_mac.cc
│   │   │   │   │   ├── sanitizer_mac.h
│   │   │   │   │   ├── sanitizer_malloc_mac.inc
│   │   │   │   │   ├── sanitizer_mutex.h
│   │   │   │   │   ├── sanitizer_persistent_allocator.cc
│   │   │   │   │   ├── sanitizer_persistent_allocator.h
│   │   │   │   │   ├── sanitizer_placement_new.h
│   │   │   │   │   ├── sanitizer_platform.h
│   │   │   │   │   ├── sanitizer_platform_interceptors.h
│   │   │   │   │   ├── sanitizer_platform_limits_linux.cc
│   │   │   │   │   ├── sanitizer_platform_limits_posix.cc
│   │   │   │   │   ├── sanitizer_platform_limits_posix.h
│   │   │   │   │   ├── sanitizer_posix.cc
│   │   │   │   │   ├── sanitizer_posix.h
│   │   │   │   │   ├── sanitizer_posix_libcdep.cc
│   │   │   │   │   ├── sanitizer_printf.cc
│   │   │   │   │   ├── sanitizer_procmaps.h
│   │   │   │   │   ├── sanitizer_procmaps_common.cc
│   │   │   │   │   ├── sanitizer_procmaps_freebsd.cc
│   │   │   │   │   ├── sanitizer_procmaps_linux.cc
│   │   │   │   │   ├── sanitizer_procmaps_mac.cc
│   │   │   │   │   ├── sanitizer_quarantine.h
│   │   │   │   │   ├── sanitizer_report_decorator.h
│   │   │   │   │   ├── sanitizer_stackdepot.cc
│   │   │   │   │   ├── sanitizer_stackdepot.h
│   │   │   │   │   ├── sanitizer_stackdepotbase.h
│   │   │   │   │   ├── sanitizer_stacktrace.cc
│   │   │   │   │   ├── sanitizer_stacktrace.h
│   │   │   │   │   ├── sanitizer_stacktrace_libcdep.cc
│   │   │   │   │   ├── sanitizer_stacktrace_printer.cc
│   │   │   │   │   ├── sanitizer_stacktrace_printer.h
│   │   │   │   │   ├── sanitizer_stoptheworld.h
│   │   │   │   │   ├── sanitizer_stoptheworld_linux_libcdep.cc
│   │   │   │   │   ├── sanitizer_suppressions.cc
│   │   │   │   │   ├── sanitizer_suppressions.h
│   │   │   │   │   ├── sanitizer_symbolizer.cc
│   │   │   │   │   ├── sanitizer_symbolizer.h
│   │   │   │   │   ├── sanitizer_symbolizer_internal.h
│   │   │   │   │   ├── sanitizer_symbolizer_libbacktrace.cc
│   │   │   │   │   ├── sanitizer_symbolizer_libbacktrace.h
│   │   │   │   │   ├── sanitizer_symbolizer_libcdep.cc
│   │   │   │   │   ├── sanitizer_symbolizer_mac.cc
│   │   │   │   │   ├── sanitizer_symbolizer_mac.h
│   │   │   │   │   ├── sanitizer_symbolizer_posix_libcdep.cc
│   │   │   │   │   ├── sanitizer_symbolizer_win.cc
│   │   │   │   │   ├── sanitizer_syscall_generic.inc
│   │   │   │   │   ├── sanitizer_syscall_linux_aarch64.inc
│   │   │   │   │   ├── sanitizer_syscall_linux_x86_64.inc
│   │   │   │   │   ├── sanitizer_thread_registry.cc
│   │   │   │   │   ├── sanitizer_thread_registry.h
│   │   │   │   │   ├── sanitizer_tls_get_addr.cc
│   │   │   │   │   ├── sanitizer_tls_get_addr.h
│   │   │   │   │   ├── sanitizer_unwind_linux_libcdep.cc
│   │   │   │   │   ├── sanitizer_win.cc
│   │   │   │   │   ├── scripts/
│   │   │   │   │   │   ├── check_lint.sh
│   │   │   │   │   │   ├── cpplint.py
│   │   │   │   │   │   ├── gen_dynamic_list.py
│   │   │   │   │   │   ├── litlint.py
│   │   │   │   │   │   ├── litlint_test.py
│   │   │   │   │   │   └── sancov.py
│   │   │   │   │   └── tests/
│   │   │   │   │       ├── Android.mk
│   │   │   │   │       ├── CMakeLists.txt
│   │   │   │   │       ├── sanitizer_allocator_test.cc
│   │   │   │   │       ├── sanitizer_allocator_testlib.cc
│   │   │   │   │       ├── sanitizer_atomic_test.cc
│   │   │   │   │       ├── sanitizer_bitvector_test.cc
│   │   │   │   │       ├── sanitizer_bvgraph_test.cc
│   │   │   │   │       ├── sanitizer_common_test.cc
│   │   │   │   │       ├── sanitizer_deadlock_detector_test.cc
│   │   │   │   │       ├── sanitizer_flags_test.cc
│   │   │   │   │       ├── sanitizer_format_interceptor_test.cc
│   │   │   │   │       ├── sanitizer_ioctl_test.cc
│   │   │   │   │       ├── sanitizer_libc_test.cc
│   │   │   │   │       ├── sanitizer_linux_test.cc
│   │   │   │   │       ├── sanitizer_list_test.cc
│   │   │   │   │       ├── sanitizer_mutex_test.cc
│   │   │   │   │       ├── sanitizer_nolibc_test.cc
│   │   │   │   │       ├── sanitizer_nolibc_test_main.cc
│   │   │   │   │       ├── sanitizer_posix_test.cc
│   │   │   │   │       ├── sanitizer_printf_test.cc
│   │   │   │   │       ├── sanitizer_procmaps_test.cc
│   │   │   │   │       ├── sanitizer_pthread_wrappers.h
│   │   │   │   │       ├── sanitizer_stackdepot_test.cc
│   │   │   │   │       ├── sanitizer_stacktrace_printer_test.cc
│   │   │   │   │       ├── sanitizer_stacktrace_test.cc
│   │   │   │   │       ├── sanitizer_stoptheworld_test.cc
│   │   │   │   │       ├── sanitizer_stoptheworld_testlib.cc
│   │   │   │   │       ├── sanitizer_suppressions_test.cc
│   │   │   │   │       ├── sanitizer_symbolizer_test.cc
│   │   │   │   │       ├── sanitizer_test_config.h
│   │   │   │   │       ├── sanitizer_test_main.cc
│   │   │   │   │       ├── sanitizer_test_utils.h
│   │   │   │   │       ├── sanitizer_thread_registry_test.cc
│   │   │   │   │       └── standalone_malloc_test.cc
│   │   │   │   ├── tsan/
│   │   │   │   │   ├── .clang-format
│   │   │   │   │   ├── Android.mk
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── analyze_libtsan.sh
│   │   │   │   │   ├── benchmarks/
│   │   │   │   │   │   ├── mini_bench_local.cc
│   │   │   │   │   │   ├── mini_bench_shared.cc
│   │   │   │   │   │   ├── start_many_threads.cc
│   │   │   │   │   │   └── vts_many_threads_bench.cc
│   │   │   │   │   ├── check_analyze.sh
│   │   │   │   │   ├── check_cmake.sh
│   │   │   │   │   ├── dd/
│   │   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   │   ├── dd_interceptors.cc
│   │   │   │   │   │   ├── dd_rtl.cc
│   │   │   │   │   │   └── dd_rtl.h
│   │   │   │   │   ├── go/
│   │   │   │   │   │   ├── build.bat
│   │   │   │   │   │   ├── buildgo.sh
│   │   │   │   │   │   ├── test.c
│   │   │   │   │   │   └── tsan_go.cc
│   │   │   │   │   ├── rtl/
│   │   │   │   │   │   ├── tsan.syms.extra
│   │   │   │   │   │   ├── tsan_clock.cc
│   │   │   │   │   │   ├── tsan_clock.h
│   │   │   │   │   │   ├── tsan_defs.h
│   │   │   │   │   │   ├── tsan_dense_alloc.h
│   │   │   │   │   │   ├── tsan_fd.cc
│   │   │   │   │   │   ├── tsan_fd.h
│   │   │   │   │   │   ├── tsan_flags.cc
│   │   │   │   │   │   ├── tsan_flags.h
│   │   │   │   │   │   ├── tsan_flags.inc
│   │   │   │   │   │   ├── tsan_ignoreset.cc
│   │   │   │   │   │   ├── tsan_ignoreset.h
│   │   │   │   │   │   ├── tsan_interceptors.cc
│   │   │   │   │   │   ├── tsan_interceptors.h
│   │   │   │   │   │   ├── tsan_interceptors_mac.cc
│   │   │   │   │   │   ├── tsan_interface.cc
│   │   │   │   │   │   ├── tsan_interface.h
│   │   │   │   │   │   ├── tsan_interface_ann.cc
│   │   │   │   │   │   ├── tsan_interface_ann.h
│   │   │   │   │   │   ├── tsan_interface_atomic.cc
│   │   │   │   │   │   ├── tsan_interface_inl.h
│   │   │   │   │   │   ├── tsan_interface_java.cc
│   │   │   │   │   │   ├── tsan_interface_java.h
│   │   │   │   │   │   ├── tsan_libdispatch_mac.cc
│   │   │   │   │   │   ├── tsan_malloc_mac.cc
│   │   │   │   │   │   ├── tsan_md5.cc
│   │   │   │   │   │   ├── tsan_mman.cc
│   │   │   │   │   │   ├── tsan_mman.h
│   │   │   │   │   │   ├── tsan_mutex.cc
│   │   │   │   │   │   ├── tsan_mutex.h
│   │   │   │   │   │   ├── tsan_mutexset.cc
│   │   │   │   │   │   ├── tsan_mutexset.h
│   │   │   │   │   │   ├── tsan_new_delete.cc
│   │   │   │   │   │   ├── tsan_platform.h
│   │   │   │   │   │   ├── tsan_platform_linux.cc
│   │   │   │   │   │   ├── tsan_platform_mac.cc
│   │   │   │   │   │   ├── tsan_platform_posix.cc
│   │   │   │   │   │   ├── tsan_platform_windows.cc
│   │   │   │   │   │   ├── tsan_ppc_regs.h
│   │   │   │   │   │   ├── tsan_report.cc
│   │   │   │   │   │   ├── tsan_report.h
│   │   │   │   │   │   ├── tsan_rtl.cc
│   │   │   │   │   │   ├── tsan_rtl.h
│   │   │   │   │   │   ├── tsan_rtl_aarch64.S
│   │   │   │   │   │   ├── tsan_rtl_amd64.S
│   │   │   │   │   │   ├── tsan_rtl_mutex.cc
│   │   │   │   │   │   ├── tsan_rtl_ppc64.S
│   │   │   │   │   │   ├── tsan_rtl_report.cc
│   │   │   │   │   │   ├── tsan_rtl_thread.cc
│   │   │   │   │   │   ├── tsan_stack_trace.cc
│   │   │   │   │   │   ├── tsan_stack_trace.h
│   │   │   │   │   │   ├── tsan_stat.cc
│   │   │   │   │   │   ├── tsan_stat.h
│   │   │   │   │   │   ├── tsan_suppressions.cc
│   │   │   │   │   │   ├── tsan_suppressions.h
│   │   │   │   │   │   ├── tsan_symbolize.cc
│   │   │   │   │   │   ├── tsan_symbolize.h
│   │   │   │   │   │   ├── tsan_sync.cc
│   │   │   │   │   │   ├── tsan_sync.h
│   │   │   │   │   │   ├── tsan_trace.h
│   │   │   │   │   │   ├── tsan_update_shadow_word_inl.h
│   │   │   │   │   │   └── tsan_vector.h
│   │   │   │   │   └── tests/
│   │   │   │   │       ├── CMakeLists.txt
│   │   │   │   │       ├── rtl/
│   │   │   │   │       │   ├── CMakeLists.txt
│   │   │   │   │       │   ├── tsan_bench.cc
│   │   │   │   │       │   ├── tsan_mop.cc
│   │   │   │   │       │   ├── tsan_mutex.cc
│   │   │   │   │       │   ├── tsan_posix.cc
│   │   │   │   │       │   ├── tsan_string.cc
│   │   │   │   │       │   ├── tsan_test.cc
│   │   │   │   │       │   ├── tsan_test_util.h
│   │   │   │   │       │   ├── tsan_test_util_linux.cc
│   │   │   │   │       │   └── tsan_thread.cc
│   │   │   │   │       └── unit/
│   │   │   │   │           ├── CMakeLists.txt
│   │   │   │   │           ├── tsan_clock_test.cc
│   │   │   │   │           ├── tsan_dense_alloc_test.cc
│   │   │   │   │           ├── tsan_flags_test.cc
│   │   │   │   │           ├── tsan_mman_test.cc
│   │   │   │   │           ├── tsan_mutex_test.cc
│   │   │   │   │           ├── tsan_mutexset_test.cc
│   │   │   │   │           ├── tsan_shadow_test.cc
│   │   │   │   │           ├── tsan_stack_test.cc
│   │   │   │   │           ├── tsan_sync_test.cc
│   │   │   │   │           ├── tsan_unit_test_main.cc
│   │   │   │   │           └── tsan_vector_test.cc
│   │   │   │   └── ubsan/
│   │   │   │       ├── Android.mk
│   │   │   │       ├── CMakeLists.txt
│   │   │   │       ├── Makefile.mk
│   │   │   │       ├── ubsan.syms.extra
│   │   │   │       ├── ubsan_checks.inc
│   │   │   │       ├── ubsan_diag.cc
│   │   │   │       ├── ubsan_diag.h
│   │   │   │       ├── ubsan_flags.cc
│   │   │   │       ├── ubsan_flags.h
│   │   │   │       ├── ubsan_flags.inc
│   │   │   │       ├── ubsan_handlers.cc
│   │   │   │       ├── ubsan_handlers.h
│   │   │   │       ├── ubsan_handlers_cxx.cc
│   │   │   │       ├── ubsan_handlers_cxx.h
│   │   │   │       ├── ubsan_init.cc
│   │   │   │       ├── ubsan_init.h
│   │   │   │       ├── ubsan_init_standalone.cc
│   │   │   │       ├── ubsan_platform.h
│   │   │   │       ├── ubsan_type_hash.cc
│   │   │   │       ├── ubsan_type_hash.h
│   │   │   │       ├── ubsan_type_hash_itanium.cc
│   │   │   │       ├── ubsan_type_hash_win.cc
│   │   │   │       ├── ubsan_value.cc
│   │   │   │       └── ubsan_value.h
│   │   │   └── make/
│   │   │       ├── AppleBI.mk
│   │   │       ├── config.mk
│   │   │       ├── filter-inputs
│   │   │       ├── lib_info.mk
│   │   │       ├── lib_platforms.mk
│   │   │       ├── lib_util.mk
│   │   │       ├── options.mk
│   │   │       ├── platform/
│   │   │       │   ├── clang_darwin.mk
│   │   │       │   ├── clang_darwin_test_input.c
│   │   │       │   ├── clang_linux.mk
│   │   │       │   ├── clang_linux_test_input.c
│   │   │       │   ├── clang_macho_embedded.mk
│   │   │       │   ├── clang_macho_embedded_test_input.c
│   │   │       │   ├── clang_mingw.mk
│   │   │       │   ├── darwin_bni.mk
│   │   │       │   └── multi_arch.mk
│   │   │       ├── subdir.mk
│   │   │       ├── test/
│   │   │       │   └── test-util.mk
│   │   │       └── util.mk
│   │   ├── expat/
│   │   │   ├── Android.mk
│   │   │   ├── Changes
│   │   │   ├── CleanSpec.mk
│   │   │   ├── MODULE_LICENSE_BSD_LIKE
│   │   │   ├── NOTICE
│   │   │   ├── README
│   │   │   ├── README.android
│   │   │   ├── README.version
│   │   │   ├── expat_config.h
│   │   │   ├── import_expat.sh
│   │   │   └── lib/
│   │   │       ├── ascii.h
│   │   │       ├── asciitab.h
│   │   │       ├── expat.h
│   │   │       ├── expat_external.h
│   │   │       ├── iasciitab.h
│   │   │       ├── internal.h
│   │   │       ├── latin1tab.h
│   │   │       ├── nametab.h
│   │   │       ├── utf8tab.h
│   │   │       ├── xmlparse.c
│   │   │       ├── xmlrole.c
│   │   │       ├── xmlrole.h
│   │   │       ├── xmltok.c
│   │   │       ├── xmltok.h
│   │   │       ├── xmltok_impl.c
│   │   │       ├── xmltok_impl.h
│   │   │       └── xmltok_ns.c
│   │   ├── libcxx/
│   │   │   ├── .arcconfig
│   │   │   ├── .gitignore
│   │   │   ├── Android.bp
│   │   │   ├── Android.mk
│   │   │   ├── CMakeLists.txt
│   │   │   ├── CREDITS.TXT
│   │   │   ├── LICENSE.TXT
│   │   │   ├── MODULE_LICENSE_BSD_LIKE
│   │   │   ├── Makefile
│   │   │   ├── NOTICE
│   │   │   ├── TODO.TXT
│   │   │   ├── buildcmds/
│   │   │   │   ├── .gitignore
│   │   │   │   ├── Android.mk
│   │   │   │   ├── buildcmdscc
│   │   │   │   └── dummy.cpp
│   │   │   ├── cmake/
│   │   │   │   ├── Modules/
│   │   │   │   │   ├── CodeCoverage.cmake
│   │   │   │   │   ├── HandleLibCXXABI.cmake
│   │   │   │   │   ├── HandleLibcxxFlags.cmake
│   │   │   │   │   ├── HandleOutOfTreeLLVM.cmake
│   │   │   │   │   └── MacroEnsureOutOfSourceBuild.cmake
│   │   │   │   └── config-ix.cmake
│   │   │   ├── include/
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   ├── __bit_reference
│   │   │   │   ├── __config
│   │   │   │   ├── __debug
│   │   │   │   ├── __functional_03
│   │   │   │   ├── __functional_base
│   │   │   │   ├── __functional_base_03
│   │   │   │   ├── __hash_table
│   │   │   │   ├── __locale
│   │   │   │   ├── __mutex_base
│   │   │   │   ├── __refstring
│   │   │   │   ├── __split_buffer
│   │   │   │   ├── __sso_allocator
│   │   │   │   ├── __std_stream
│   │   │   │   ├── __tree
│   │   │   │   ├── __tuple
│   │   │   │   ├── __undef___deallocate
│   │   │   │   ├── __undef_min_max
│   │   │   │   ├── algorithm
│   │   │   │   ├── array
│   │   │   │   ├── atomic
│   │   │   │   ├── bitset
│   │   │   │   ├── cassert
│   │   │   │   ├── ccomplex
│   │   │   │   ├── cctype
│   │   │   │   ├── cerrno
│   │   │   │   ├── cfenv
│   │   │   │   ├── cfloat
│   │   │   │   ├── chrono
│   │   │   │   ├── cinttypes
│   │   │   │   ├── ciso646
│   │   │   │   ├── climits
│   │   │   │   ├── clocale
│   │   │   │   ├── cmath
│   │   │   │   ├── codecvt
│   │   │   │   ├── complex
│   │   │   │   ├── complex.h
│   │   │   │   ├── condition_variable
│   │   │   │   ├── csetjmp
│   │   │   │   ├── csignal
│   │   │   │   ├── cstdarg
│   │   │   │   ├── cstdbool
│   │   │   │   ├── cstddef
│   │   │   │   ├── cstdint
│   │   │   │   ├── cstdio
│   │   │   │   ├── cstdlib
│   │   │   │   ├── cstring
│   │   │   │   ├── ctgmath
│   │   │   │   ├── ctime
│   │   │   │   ├── cwchar
│   │   │   │   ├── cwctype
│   │   │   │   ├── deque
│   │   │   │   ├── exception
│   │   │   │   ├── experimental/
│   │   │   │   │   ├── __config
│   │   │   │   │   ├── algorithm
│   │   │   │   │   ├── any
│   │   │   │   │   ├── chrono
│   │   │   │   │   ├── dynarray
│   │   │   │   │   ├── functional
│   │   │   │   │   ├── optional
│   │   │   │   │   ├── ratio
│   │   │   │   │   ├── string_view
│   │   │   │   │   ├── system_error
│   │   │   │   │   ├── tuple
│   │   │   │   │   ├── type_traits
│   │   │   │   │   └── utility
│   │   │   │   ├── ext/
│   │   │   │   │   ├── __hash
│   │   │   │   │   ├── hash_map
│   │   │   │   │   └── hash_set
│   │   │   │   ├── forward_list
│   │   │   │   ├── fstream
│   │   │   │   ├── functional
│   │   │   │   ├── future
│   │   │   │   ├── initializer_list
│   │   │   │   ├── iomanip
│   │   │   │   ├── ios
│   │   │   │   ├── iosfwd
│   │   │   │   ├── iostream
│   │   │   │   ├── istream
│   │   │   │   ├── iterator
│   │   │   │   ├── limits
│   │   │   │   ├── list
│   │   │   │   ├── locale
│   │   │   │   ├── map
│   │   │   │   ├── memory
│   │   │   │   ├── module.modulemap
│   │   │   │   ├── mutex
│   │   │   │   ├── new
│   │   │   │   ├── numeric
│   │   │   │   ├── ostream
│   │   │   │   ├── queue
│   │   │   │   ├── random
│   │   │   │   ├── ratio
│   │   │   │   ├── regex
│   │   │   │   ├── scoped_allocator
│   │   │   │   ├── set
│   │   │   │   ├── shared_mutex
│   │   │   │   ├── sstream
│   │   │   │   ├── stack
│   │   │   │   ├── stdexcept
│   │   │   │   ├── streambuf
│   │   │   │   ├── string
│   │   │   │   ├── strstream
│   │   │   │   ├── support/
│   │   │   │   │   ├── android/
│   │   │   │   │   │   └── locale_bionic.h
│   │   │   │   │   ├── ibm/
│   │   │   │   │   │   ├── limits.h
│   │   │   │   │   │   ├── support.h
│   │   │   │   │   │   └── xlocale.h
│   │   │   │   │   ├── newlib/
│   │   │   │   │   │   └── xlocale.h
│   │   │   │   │   ├── solaris/
│   │   │   │   │   │   ├── floatingpoint.h
│   │   │   │   │   │   ├── wchar.h
│   │   │   │   │   │   └── xlocale.h
│   │   │   │   │   ├── win32/
│   │   │   │   │   │   ├── limits_win32.h
│   │   │   │   │   │   ├── locale_win32.h
│   │   │   │   │   │   ├── math_win32.h
│   │   │   │   │   │   └── support.h
│   │   │   │   │   └── xlocale/
│   │   │   │   │       └── xlocale.h
│   │   │   │   ├── system_error
│   │   │   │   ├── tgmath.h
│   │   │   │   ├── thread
│   │   │   │   ├── tuple
│   │   │   │   ├── type_traits
│   │   │   │   ├── typeindex
│   │   │   │   ├── typeinfo
│   │   │   │   ├── unordered_map
│   │   │   │   ├── unordered_set
│   │   │   │   ├── utility
│   │   │   │   ├── valarray
│   │   │   │   └── vector
│   │   │   ├── lib/
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   ├── buildit
│   │   │   │   ├── libc++abi.exp
│   │   │   │   ├── libc++abi2.exp
│   │   │   │   ├── libc++sjlj-abi.exp
│   │   │   │   ├── libc++unexp.exp
│   │   │   │   ├── notweak.exp
│   │   │   │   └── weak.exp
│   │   │   ├── lit.site.cfg
│   │   │   ├── ndk-test.sh
│   │   │   ├── run-tests.py
│   │   │   ├── src/
│   │   │   │   ├── algorithm.cpp
│   │   │   │   ├── any.cpp
│   │   │   │   ├── bind.cpp
│   │   │   │   ├── chrono.cpp
│   │   │   │   ├── condition_variable.cpp
│   │   │   │   ├── config_elast.h
│   │   │   │   ├── debug.cpp
│   │   │   │   ├── exception.cpp
│   │   │   │   ├── future.cpp
│   │   │   │   ├── hash.cpp
│   │   │   │   ├── ios.cpp
│   │   │   │   ├── iostream.cpp
│   │   │   │   ├── locale.cpp
│   │   │   │   ├── memory.cpp
│   │   │   │   ├── mutex.cpp
│   │   │   │   ├── new.cpp
│   │   │   │   ├── optional.cpp
│   │   │   │   ├── random.cpp
│   │   │   │   ├── regex.cpp
│   │   │   │   ├── shared_mutex.cpp
│   │   │   │   ├── stdexcept.cpp
│   │   │   │   ├── string.cpp
│   │   │   │   ├── strstream.cpp
│   │   │   │   ├── support/
│   │   │   │   │   ├── atomic_support.h
│   │   │   │   │   ├── solaris/
│   │   │   │   │   │   ├── README
│   │   │   │   │   │   ├── mbsnrtowcs.inc
│   │   │   │   │   │   ├── wcsnrtombs.inc
│   │   │   │   │   │   └── xlocale.c
│   │   │   │   │   └── win32/
│   │   │   │   │       ├── locale_win32.cpp
│   │   │   │   │       └── support.cpp
│   │   │   │   ├── system_error.cpp
│   │   │   │   ├── thread.cpp
│   │   │   │   ├── typeinfo.cpp
│   │   │   │   ├── utility.cpp
│   │   │   │   └── valarray.cpp
│   │   │   ├── test.mk
│   │   │   └── utils/
│   │   │       ├── not/
│   │   │       │   └── not.py
│   │   │       └── sym_check/
│   │   │           ├── linux_blacklist.txt
│   │   │           ├── osx_blacklist.txt
│   │   │           ├── sym_check/
│   │   │           │   ├── __init__.py
│   │   │           │   ├── diff.py
│   │   │           │   ├── extract.py
│   │   │           │   ├── match.py
│   │   │           │   └── util.py
│   │   │           ├── sym_diff.py
│   │   │           ├── sym_extract.py
│   │   │           └── sym_match.py
│   │   ├── libcxxabi/
│   │   │   ├── .arcconfig
│   │   │   ├── .gitignore
│   │   │   ├── Android.bp
│   │   │   ├── Android.mk
│   │   │   ├── CMakeLists.txt
│   │   │   ├── CREDITS.TXT
│   │   │   ├── LICENSE.TXT
│   │   │   ├── MODULE_LICENSE_BSD_LIKE
│   │   │   ├── NOTICE
│   │   │   ├── cmake/
│   │   │   │   └── config-ix.cmake
│   │   │   ├── include/
│   │   │   │   ├── __cxxabi_config.h
│   │   │   │   └── cxxabi.h
│   │   │   ├── lib/
│   │   │   │   └── buildit
│   │   │   └── src/
│   │   │       ├── CMakeLists.txt
│   │   │       ├── abort_message.cpp
│   │   │       ├── abort_message.h
│   │   │       ├── config.h
│   │   │       ├── cxa_aux_runtime.cpp
│   │   │       ├── cxa_default_handlers.cpp
│   │   │       ├── cxa_demangle.cpp
│   │   │       ├── cxa_exception.cpp
│   │   │       ├── cxa_exception.hpp
│   │   │       ├── cxa_exception_storage.cpp
│   │   │       ├── cxa_guard.cpp
│   │   │       ├── cxa_handlers.cpp
│   │   │       ├── cxa_handlers.hpp
│   │   │       ├── cxa_new_delete.cpp
│   │   │       ├── cxa_personality.cpp
│   │   │       ├── cxa_thread_atexit.cpp
│   │   │       ├── cxa_unexpected.cpp
│   │   │       ├── cxa_vector.cpp
│   │   │       ├── cxa_virtual.cpp
│   │   │       ├── exception.cpp
│   │   │       ├── fallback_malloc.ipp
│   │   │       ├── private_typeinfo.cpp
│   │   │       ├── private_typeinfo.h
│   │   │       ├── stdexcept.cpp
│   │   │       └── typeinfo.cpp
│   │   ├── libpng/
│   │   │   ├── ANNOUNCE
│   │   │   ├── Android.mk
│   │   │   ├── CHANGES
│   │   │   ├── CMakeLists.txt
│   │   │   ├── CleanSpec.mk
│   │   │   ├── INSTALL
│   │   │   ├── LICENSE
│   │   │   ├── MODULE_LICENSE_BSD_LIKE
│   │   │   ├── Makefile.am
│   │   │   ├── README
│   │   │   ├── README.android
│   │   │   ├── README.version
│   │   │   ├── TODO
│   │   │   ├── arm/
│   │   │   │   ├── arm_init.c
│   │   │   │   ├── filter_neon.S
│   │   │   │   └── filter_neon_intrinsics.c
│   │   │   ├── autogen.sh
│   │   │   ├── configure.ac
│   │   │   ├── contrib/
│   │   │   │   ├── README.txt
│   │   │   │   ├── arm-neon/
│   │   │   │   │   ├── README
│   │   │   │   │   ├── android-ndk.c
│   │   │   │   │   ├── linux-auxv.c
│   │   │   │   │   └── linux.c
│   │   │   │   ├── conftest/
│   │   │   │   │   ├── README
│   │   │   │   │   ├── read.dfa
│   │   │   │   │   ├── s_read.dfa
│   │   │   │   │   ├── s_write.dfa
│   │   │   │   │   ├── simple.dfa
│   │   │   │   │   └── write.dfa
│   │   │   │   ├── examples/
│   │   │   │   │   ├── README.txt
│   │   │   │   │   ├── iccfrompng.c
│   │   │   │   │   ├── pngpixel.c
│   │   │   │   │   └── pngtopng.c
│   │   │   │   ├── gregbook/
│   │   │   │   │   ├── COPYING
│   │   │   │   │   ├── LICENSE
│   │   │   │   │   ├── Makefile.mingw32
│   │   │   │   │   ├── Makefile.sgi
│   │   │   │   │   ├── Makefile.unx
│   │   │   │   │   ├── Makefile.w32
│   │   │   │   │   ├── README
│   │   │   │   │   ├── makevms.com
│   │   │   │   │   ├── readpng.c
│   │   │   │   │   ├── readpng.h
│   │   │   │   │   ├── readpng2.c
│   │   │   │   │   ├── readpng2.h
│   │   │   │   │   ├── readppm.c
│   │   │   │   │   ├── rpng-win.c
│   │   │   │   │   ├── rpng-x.c
│   │   │   │   │   ├── rpng2-win.c
│   │   │   │   │   ├── rpng2-x.c
│   │   │   │   │   ├── wpng.c
│   │   │   │   │   ├── writepng.c
│   │   │   │   │   └── writepng.h
│   │   │   │   ├── intel/
│   │   │   │   │   ├── INSTALL
│   │   │   │   │   ├── Makefile.am.patch
│   │   │   │   │   ├── configure.ac.patch
│   │   │   │   │   ├── filter_sse2_intrinsics.c
│   │   │   │   │   └── intel_init.c
│   │   │   │   ├── libtests/
│   │   │   │   │   ├── fakepng.c
│   │   │   │   │   ├── gentests.sh
│   │   │   │   │   ├── makepng.c
│   │   │   │   │   ├── pngimage.c
│   │   │   │   │   ├── pngstest-errors.h
│   │   │   │   │   ├── pngstest.c
│   │   │   │   │   ├── pngunknown.c
│   │   │   │   │   ├── pngvalid.c
│   │   │   │   │   ├── readpng.c
│   │   │   │   │   ├── tarith.c
│   │   │   │   │   └── timepng.c
│   │   │   │   ├── pngminim/
│   │   │   │   │   ├── README
│   │   │   │   │   ├── decoder/
│   │   │   │   │   │   ├── README
│   │   │   │   │   │   ├── makefile
│   │   │   │   │   │   ├── pngusr.dfa
│   │   │   │   │   │   └── pngusr.h
│   │   │   │   │   ├── encoder/
│   │   │   │   │   │   ├── README
│   │   │   │   │   │   ├── makefile
│   │   │   │   │   │   ├── pngusr.dfa
│   │   │   │   │   │   └── pngusr.h
│   │   │   │   │   └── preader/
│   │   │   │   │       ├── README
│   │   │   │   │       ├── makefile
│   │   │   │   │       ├── pngusr.dfa
│   │   │   │   │       └── pngusr.h
│   │   │   │   ├── pngminus/
│   │   │   │   │   ├── README
│   │   │   │   │   ├── makefile.std
│   │   │   │   │   ├── makefile.tc3
│   │   │   │   │   ├── makevms.com
│   │   │   │   │   ├── png2pnm.bat
│   │   │   │   │   ├── png2pnm.c
│   │   │   │   │   ├── png2pnm.sh
│   │   │   │   │   ├── pngminus.bat
│   │   │   │   │   ├── pngminus.sh
│   │   │   │   │   ├── pnm2png.bat
│   │   │   │   │   ├── pnm2png.c
│   │   │   │   │   └── pnm2png.sh
│   │   │   │   ├── pngsuite/
│   │   │   │   │   └── README
│   │   │   │   ├── tools/
│   │   │   │   │   ├── README.txt
│   │   │   │   │   ├── checksum-icc.c
│   │   │   │   │   ├── chkfmt
│   │   │   │   │   ├── cvtcolor.c
│   │   │   │   │   ├── genpng.c
│   │   │   │   │   ├── intgamma.sh
│   │   │   │   │   ├── makesRGB.c
│   │   │   │   │   ├── png-fix-itxt.c
│   │   │   │   │   ├── pngfix.c
│   │   │   │   │   └── sRGB.h
│   │   │   │   └── visupng/
│   │   │   │       ├── PngFile.c
│   │   │   │       ├── PngFile.h
│   │   │   │       ├── README.txt
│   │   │   │       ├── VisualPng.c
│   │   │   │       ├── VisualPng.dsp
│   │   │   │       ├── VisualPng.dsw
│   │   │   │       ├── VisualPng.rc
│   │   │   │       ├── cexcept.h
│   │   │   │       └── resource.h
│   │   │   ├── example.c
│   │   │   ├── libpng-config.in
│   │   │   ├── libpng-manual.txt
│   │   │   ├── libpng.3
│   │   │   ├── libpng.pc.in
│   │   │   ├── libpngpf.3
│   │   │   ├── png.5
│   │   │   ├── png.c
│   │   │   ├── png.h
│   │   │   ├── pngconf.h
│   │   │   ├── pngdebug.h
│   │   │   ├── pngerror.c
│   │   │   ├── pngget.c
│   │   │   ├── pnginfo.h
│   │   │   ├── pnglibconf.h
│   │   │   ├── pngmem.c
│   │   │   ├── pngpread.c
│   │   │   ├── pngpriv.h
│   │   │   ├── pngread.c
│   │   │   ├── pngrio.c
│   │   │   ├── pngrtran.c
│   │   │   ├── pngrutil.c
│   │   │   ├── pngset.c
│   │   │   ├── pngstruct.h
│   │   │   ├── pngtest.c
│   │   │   ├── pngtrans.c
│   │   │   ├── pngusr.dfa
│   │   │   ├── pngusr.h
│   │   │   ├── pngwio.c
│   │   │   ├── pngwrite.c
│   │   │   ├── pngwtran.c
│   │   │   ├── pngwutil.c
│   │   │   ├── projects/
│   │   │   │   ├── owatcom/
│   │   │   │   │   ├── libpng.tgt
│   │   │   │   │   ├── libpng.wpj
│   │   │   │   │   ├── pngconfig.mak
│   │   │   │   │   ├── pngstest.tgt
│   │   │   │   │   ├── pngtest.tgt
│   │   │   │   │   └── pngvalid.tgt
│   │   │   │   ├── visualc71/
│   │   │   │   │   ├── PRJ0041.mak
│   │   │   │   │   ├── README.txt
│   │   │   │   │   ├── README_zlib.txt
│   │   │   │   │   ├── libpng.sln
│   │   │   │   │   ├── libpng.vcproj
│   │   │   │   │   ├── pngtest.vcproj
│   │   │   │   │   └── zlib.vcproj
│   │   │   │   └── vstudio/
│   │   │   │       ├── README.txt
│   │   │   │       ├── libpng/
│   │   │   │       │   └── libpng.vcxproj
│   │   │   │       ├── pnglibconf/
│   │   │   │       │   └── pnglibconf.vcxproj
│   │   │   │       ├── pngstest/
│   │   │   │       │   └── pngstest.vcxproj
│   │   │   │       ├── pngtest/
│   │   │   │       │   └── pngtest.vcxproj
│   │   │   │       ├── pngunknown/
│   │   │   │       │   └── pngunknown.vcxproj
│   │   │   │       ├── pngvalid/
│   │   │   │       │   └── pngvalid.vcxproj
│   │   │   │       ├── vstudio.sln
│   │   │   │       ├── zlib/
│   │   │   │       │   └── zlib.vcxproj
│   │   │   │       └── zlib.props
│   │   │   └── scripts/
│   │   │       ├── README.txt
│   │   │       ├── SCOPTIONS.ppc
│   │   │       ├── checksym.awk
│   │   │       ├── def.c
│   │   │       ├── descrip.mms
│   │   │       ├── dfn.awk
│   │   │       ├── genchk.cmake.in
│   │   │       ├── genout.cmake.in
│   │   │       ├── gensrc.cmake.in
│   │   │       ├── intprefix.c
│   │   │       ├── libpng-config-body.in
│   │   │       ├── libpng-config-head.in
│   │   │       ├── libpng.pc.in
│   │   │       ├── macro.lst
│   │   │       ├── makefile.32sunu
│   │   │       ├── makefile.64sunu
│   │   │       ├── makefile.acorn
│   │   │       ├── makefile.aix
│   │   │       ├── makefile.amiga
│   │   │       ├── makefile.atari
│   │   │       ├── makefile.bc32
│   │   │       ├── makefile.beos
│   │   │       ├── makefile.bor
│   │   │       ├── makefile.cegcc
│   │   │       ├── makefile.darwin
│   │   │       ├── makefile.dec
│   │   │       ├── makefile.dj2
│   │   │       ├── makefile.freebsd
│   │   │       ├── makefile.gcc
│   │   │       ├── makefile.hp64
│   │   │       ├── makefile.hpgcc
│   │   │       ├── makefile.hpux
│   │   │       ├── makefile.ibmc
│   │   │       ├── makefile.intel
│   │   │       ├── makefile.knr
│   │   │       ├── makefile.linux
│   │   │       ├── makefile.mips
│   │   │       ├── makefile.msc
│   │   │       ├── makefile.msys
│   │   │       ├── makefile.ne12bsd
│   │   │       ├── makefile.netbsd
│   │   │       ├── makefile.openbsd
│   │   │       ├── makefile.sco
│   │   │       ├── makefile.sggcc
│   │   │       ├── makefile.sgi
│   │   │       ├── makefile.so9
│   │   │       ├── makefile.solaris
│   │   │       ├── makefile.solaris-x86
│   │   │       ├── makefile.std
│   │   │       ├── makefile.sunos
│   │   │       ├── makefile.tc3
│   │   │       ├── makefile.vcwin32
│   │   │       ├── makevms.com
│   │   │       ├── options.awk
│   │   │       ├── pnglibconf.dfa
│   │   │       ├── pnglibconf.h.prebuilt
│   │   │       ├── pnglibconf.mak
│   │   │       ├── pngwin.rc
│   │   │       ├── prefix.c
│   │   │       ├── smakefile.ppc
│   │   │       ├── sym.c
│   │   │       ├── symbols.c
│   │   │       ├── symbols.def
│   │   │       ├── test.cmake.in
│   │   │       └── vers.c
│   │   ├── safe-iop/
│   │   │   ├── Android.mk
│   │   │   ├── CleanSpec.mk
│   │   │   ├── MODULE_LICENSE_BSD_LIKE
│   │   │   ├── NOTICE
│   │   │   ├── README.version
│   │   │   ├── include/
│   │   │   │   └── safe_iop.h
│   │   │   ├── src/
│   │   │   │   └── safe_iop.c
│   │   │   └── testsuite/
│   │   │       └── Android.mk
│   │   └── zlib/
│   │       ├── Android.mk
│   │       ├── CleanSpec.mk
│   │       ├── MODULE_LICENSE_BSD_LIKE
│   │       ├── NOTICE
│   │       ├── src/
│   │       │   ├── CMakeLists.txt
│   │       │   ├── ChangeLog
│   │       │   ├── FAQ
│   │       │   ├── INDEX
│   │       │   ├── Makefile.in
│   │       │   ├── README
│   │       │   ├── adler32.c
│   │       │   ├── amiga/
│   │       │   │   ├── Makefile.pup
│   │       │   │   └── Makefile.sas
│   │       │   ├── as400/
│   │       │   │   ├── bndsrc
│   │       │   │   ├── compile.clp
│   │       │   │   ├── readme.txt
│   │       │   │   └── zlib.inc
│   │       │   ├── compress.c
│   │       │   ├── configure
│   │       │   ├── contrib/
│   │       │   │   ├── README.contrib
│   │       │   │   ├── ada/
│   │       │   │   │   ├── buffer_demo.adb
│   │       │   │   │   ├── mtest.adb
│   │       │   │   │   ├── read.adb
│   │       │   │   │   ├── readme.txt
│   │       │   │   │   ├── test.adb
│   │       │   │   │   ├── zlib-streams.adb
│   │       │   │   │   ├── zlib-streams.ads
│   │       │   │   │   ├── zlib-thin.adb
│   │       │   │   │   ├── zlib-thin.ads
│   │       │   │   │   ├── zlib.adb
│   │       │   │   │   ├── zlib.ads
│   │       │   │   │   └── zlib.gpr
│   │       │   │   ├── amd64/
│   │       │   │   │   └── amd64-match.S
│   │       │   │   ├── asm686/
│   │       │   │   │   ├── README.686
│   │       │   │   │   └── match.S
│   │       │   │   ├── blast/
│   │       │   │   │   ├── Makefile
│   │       │   │   │   ├── README
│   │       │   │   │   ├── blast.c
│   │       │   │   │   ├── blast.h
│   │       │   │   │   ├── test.pk
│   │       │   │   │   └── test.txt
│   │       │   │   ├── delphi/
│   │       │   │   │   ├── ZLib.pas
│   │       │   │   │   ├── ZLibConst.pas
│   │       │   │   │   ├── readme.txt
│   │       │   │   │   └── zlibd32.mak
│   │       │   │   ├── dotzlib/
│   │       │   │   │   ├── DotZLib/
│   │       │   │   │   │   ├── AssemblyInfo.cs
│   │       │   │   │   │   ├── ChecksumImpl.cs
│   │       │   │   │   │   ├── CircularBuffer.cs
│   │       │   │   │   │   ├── CodecBase.cs
│   │       │   │   │   │   ├── Deflater.cs
│   │       │   │   │   │   ├── DotZLib.cs
│   │       │   │   │   │   ├── DotZLib.csproj
│   │       │   │   │   │   ├── GZipStream.cs
│   │       │   │   │   │   ├── Inflater.cs
│   │       │   │   │   │   └── UnitTests.cs
│   │       │   │   │   ├── DotZLib.build
│   │       │   │   │   ├── DotZLib.chm
│   │       │   │   │   ├── DotZLib.sln
│   │       │   │   │   ├── LICENSE_1_0.txt
│   │       │   │   │   └── readme.txt
│   │       │   │   ├── gcc_gvmat64/
│   │       │   │   │   └── gvmat64.S
│   │       │   │   ├── infback9/
│   │       │   │   │   ├── README
│   │       │   │   │   ├── infback9.c
│   │       │   │   │   ├── infback9.h
│   │       │   │   │   ├── inffix9.h
│   │       │   │   │   ├── inflate9.h
│   │       │   │   │   ├── inftree9.c
│   │       │   │   │   └── inftree9.h
│   │       │   │   ├── inflate86/
│   │       │   │   │   ├── inffas86.c
│   │       │   │   │   └── inffast.S
│   │       │   │   ├── iostream/
│   │       │   │   │   ├── test.cpp
│   │       │   │   │   ├── zfstream.cpp
│   │       │   │   │   └── zfstream.h
│   │       │   │   ├── iostream2/
│   │       │   │   │   ├── zstream.h
│   │       │   │   │   └── zstream_test.cpp
│   │       │   │   ├── iostream3/
│   │       │   │   │   ├── README
│   │       │   │   │   ├── TODO
│   │       │   │   │   ├── test.cc
│   │       │   │   │   ├── zfstream.cc
│   │       │   │   │   └── zfstream.h
│   │       │   │   ├── masmx64/
│   │       │   │   │   ├── bld_ml64.bat
│   │       │   │   │   ├── gvmat64.asm
│   │       │   │   │   ├── inffas8664.c
│   │       │   │   │   ├── inffasx64.asm
│   │       │   │   │   └── readme.txt
│   │       │   │   ├── masmx86/
│   │       │   │   │   ├── bld_ml32.bat
│   │       │   │   │   ├── inffas32.asm
│   │       │   │   │   ├── match686.asm
│   │       │   │   │   └── readme.txt
│   │       │   │   ├── minizip/
│   │       │   │   │   ├── Makefile
│   │       │   │   │   ├── Makefile.am
│   │       │   │   │   ├── MiniZip64_Changes.txt
│   │       │   │   │   ├── MiniZip64_info.txt
│   │       │   │   │   ├── configure.ac
│   │       │   │   │   ├── crypt.h
│   │       │   │   │   ├── ioapi.c
│   │       │   │   │   ├── ioapi.h
│   │       │   │   │   ├── iowin32.c
│   │       │   │   │   ├── iowin32.h
│   │       │   │   │   ├── make_vms.com
│   │       │   │   │   ├── miniunz.c
│   │       │   │   │   ├── miniunzip.1
│   │       │   │   │   ├── minizip.1
│   │       │   │   │   ├── minizip.c
│   │       │   │   │   ├── minizip.pc.in
│   │       │   │   │   ├── mztools.c
│   │       │   │   │   ├── mztools.h
│   │       │   │   │   ├── unzip.c
│   │       │   │   │   ├── unzip.h
│   │       │   │   │   ├── zip.c
│   │       │   │   │   └── zip.h
│   │       │   │   ├── pascal/
│   │       │   │   │   ├── example.pas
│   │       │   │   │   ├── readme.txt
│   │       │   │   │   ├── zlibd32.mak
│   │       │   │   │   └── zlibpas.pas
│   │       │   │   ├── puff/
│   │       │   │   │   ├── Makefile
│   │       │   │   │   ├── README
│   │       │   │   │   ├── puff.c
│   │       │   │   │   ├── puff.h
│   │       │   │   │   ├── pufftest.c
│   │       │   │   │   └── zeros.raw
│   │       │   │   ├── testzlib/
│   │       │   │   │   ├── testzlib.c
│   │       │   │   │   └── testzlib.txt
│   │       │   │   ├── untgz/
│   │       │   │   │   ├── Makefile
│   │       │   │   │   ├── Makefile.msc
│   │       │   │   │   └── untgz.c
│   │       │   │   └── vstudio/
│   │       │   │       ├── readme.txt
│   │       │   │       ├── vc10/
│   │       │   │       │   ├── miniunz.vcxproj
│   │       │   │       │   ├── miniunz.vcxproj.filters
│   │       │   │       │   ├── minizip.vcxproj
│   │       │   │       │   ├── minizip.vcxproj.filters
│   │       │   │       │   ├── testzlib.vcxproj
│   │       │   │       │   ├── testzlib.vcxproj.filters
│   │       │   │       │   ├── testzlibdll.vcxproj
│   │       │   │       │   ├── testzlibdll.vcxproj.filters
│   │       │   │       │   ├── zlib.rc
│   │       │   │       │   ├── zlibstat.vcxproj
│   │       │   │       │   ├── zlibstat.vcxproj.filters
│   │       │   │       │   ├── zlibvc.def
│   │       │   │       │   ├── zlibvc.sln
│   │       │   │       │   ├── zlibvc.vcxproj
│   │       │   │       │   └── zlibvc.vcxproj.filters
│   │       │   │       ├── vc11/
│   │       │   │       │   ├── miniunz.vcxproj
│   │       │   │       │   ├── minizip.vcxproj
│   │       │   │       │   ├── testzlib.vcxproj
│   │       │   │       │   ├── testzlibdll.vcxproj
│   │       │   │       │   ├── zlib.rc
│   │       │   │       │   ├── zlibstat.vcxproj
│   │       │   │       │   ├── zlibvc.def
│   │       │   │       │   ├── zlibvc.sln
│   │       │   │       │   └── zlibvc.vcxproj
│   │       │   │       └── vc9/
│   │       │   │           ├── miniunz.vcproj
│   │       │   │           ├── minizip.vcproj
│   │       │   │           ├── testzlib.vcproj
│   │       │   │           ├── testzlibdll.vcproj
│   │       │   │           ├── zlib.rc
│   │       │   │           ├── zlibstat.vcproj
│   │       │   │           ├── zlibvc.def
│   │       │   │           ├── zlibvc.sln
│   │       │   │           └── zlibvc.vcproj
│   │       │   ├── crc32.c
│   │       │   ├── crc32.h
│   │       │   ├── deflate.c
│   │       │   ├── deflate.h
│   │       │   ├── doc/
│   │       │   │   ├── algorithm.txt
│   │       │   │   ├── rfc1950.txt
│   │       │   │   ├── rfc1951.txt
│   │       │   │   ├── rfc1952.txt
│   │       │   │   └── txtvsbin.txt
│   │       │   ├── examples/
│   │       │   │   ├── README.examples
│   │       │   │   ├── enough.c
│   │       │   │   ├── fitblk.c
│   │       │   │   ├── gun.c
│   │       │   │   ├── gzappend.c
│   │       │   │   ├── gzjoin.c
│   │       │   │   ├── gzlog.c
│   │       │   │   ├── gzlog.h
│   │       │   │   ├── zlib_how.html
│   │       │   │   ├── zpipe.c
│   │       │   │   └── zran.c
│   │       │   ├── gzclose.c
│   │       │   ├── gzguts.h
│   │       │   ├── gzlib.c
│   │       │   ├── gzread.c
│   │       │   ├── gzwrite.c
│   │       │   ├── infback.c
│   │       │   ├── inffast.c
│   │       │   ├── inffast.h
│   │       │   ├── inffixed.h
│   │       │   ├── inflate.c
│   │       │   ├── inflate.h
│   │       │   ├── inftrees.c
│   │       │   ├── inftrees.h
│   │       │   ├── make_vms.com
│   │       │   ├── msdos/
│   │       │   │   ├── Makefile.bor
│   │       │   │   ├── Makefile.dj2
│   │       │   │   ├── Makefile.emx
│   │       │   │   ├── Makefile.msc
│   │       │   │   └── Makefile.tc
│   │       │   ├── nintendods/
│   │       │   │   ├── Makefile
│   │       │   │   └── README
│   │       │   ├── old/
│   │       │   │   ├── Makefile.emx
│   │       │   │   ├── Makefile.riscos
│   │       │   │   ├── README
│   │       │   │   ├── descrip.mms
│   │       │   │   ├── os2/
│   │       │   │   │   ├── Makefile.os2
│   │       │   │   │   └── zlib.def
│   │       │   │   └── visual-basic.txt
│   │       │   ├── qnx/
│   │       │   │   └── package.qpg
│   │       │   ├── test/
│   │       │   │   ├── example.c
│   │       │   │   ├── infcover.c
│   │       │   │   └── minigzip.c
│   │       │   ├── treebuild.xml
│   │       │   ├── trees.c
│   │       │   ├── trees.h
│   │       │   ├── uncompr.c
│   │       │   ├── watcom/
│   │       │   │   ├── watcom_f.mak
│   │       │   │   └── watcom_l.mak
│   │       │   ├── win32/
│   │       │   │   ├── DLL_FAQ.txt
│   │       │   │   ├── Makefile.bor
│   │       │   │   ├── Makefile.gcc
│   │       │   │   ├── Makefile.msc
│   │       │   │   ├── README-WIN32.txt
│   │       │   │   ├── VisualC.txt
│   │       │   │   ├── zlib.def
│   │       │   │   └── zlib1.rc
│   │       │   ├── zconf.h
│   │       │   ├── zconf.h.cmakein
│   │       │   ├── zconf.h.in
│   │       │   ├── zlib.3
│   │       │   ├── zlib.h
│   │       │   ├── zlib.pc
│   │       │   ├── zlib.pc.cmakein
│   │       │   ├── zlib.pc.in
│   │       │   ├── zlib2ansi
│   │       │   ├── zutil.c
│   │       │   └── zutil.h
│   │       └── update_zlib.sh
│   ├── frameworks/
│   │   ├── base/
│   │   │   ├── include/
│   │   │   │   ├── android_runtime/
│   │   │   │   │   ├── AndroidRuntime.h
│   │   │   │   │   ├── Log.h
│   │   │   │   │   ├── android_app_NativeActivity.h
│   │   │   │   │   ├── android_content_res_Configuration.h
│   │   │   │   │   ├── android_graphics_SurfaceTexture.h
│   │   │   │   │   ├── android_hardware_camera2_CameraMetadata.h
│   │   │   │   │   ├── android_util_AssetManager.h
│   │   │   │   │   ├── android_view_InputQueue.h
│   │   │   │   │   ├── android_view_Surface.h
│   │   │   │   │   └── android_view_SurfaceSession.h
│   │   │   │   ├── androidfw/
│   │   │   │   │   ├── Asset.h
│   │   │   │   │   ├── AssetDir.h
│   │   │   │   │   ├── AssetManager.h
│   │   │   │   │   ├── AttributeFinder.h
│   │   │   │   │   ├── BackupHelpers.h
│   │   │   │   │   ├── ByteBucketArray.h
│   │   │   │   │   ├── CursorWindow.h
│   │   │   │   │   ├── DisplayEventDispatcher.h
│   │   │   │   │   ├── LocaleData.h
│   │   │   │   │   ├── ObbFile.h
│   │   │   │   │   ├── ResourcePackageId.h
│   │   │   │   │   ├── ResourceTypes.h
│   │   │   │   │   ├── StreamingZipInflater.h
│   │   │   │   │   ├── TypeWrappers.h
│   │   │   │   │   ├── ZipFileRO.h
│   │   │   │   │   ├── ZipUtils.h
│   │   │   │   │   └── misc.h
│   │   │   │   ├── private/
│   │   │   │   │   ├── README
│   │   │   │   │   └── hwui/
│   │   │   │   │       └── DrawGlInfo.h
│   │   │   │   └── storage/
│   │   │   │       ├── IMountService.h
│   │   │   │       ├── IMountServiceListener.h
│   │   │   │       ├── IMountShutdownObserver.h
│   │   │   │       └── IObbActionListener.h
│   │   │   ├── libs/
│   │   │   │   └── androidfw/
│   │   │   │       ├── Android.mk
│   │   │   │       ├── Asset.cpp
│   │   │   │       ├── AssetDir.cpp
│   │   │   │       ├── AssetManager.cpp
│   │   │   │       ├── BackupData.cpp
│   │   │   │       ├── BackupHelpers.cpp
│   │   │   │       ├── CursorWindow.cpp
│   │   │   │       ├── DisplayEventDispatcher.cpp
│   │   │   │       ├── LocaleData.cpp
│   │   │   │       ├── LocaleDataTables.cpp
│   │   │   │       ├── MODULE_LICENSE_APACHE2
│   │   │   │       ├── NOTICE
│   │   │   │       ├── ObbFile.cpp
│   │   │   │       ├── ResourceTypes.cpp
│   │   │   │       ├── StreamingZipInflater.cpp
│   │   │   │       ├── TypeWrappers.cpp
│   │   │   │       ├── ZipFileRO.cpp
│   │   │   │       ├── ZipUtils.cpp
│   │   │   │       ├── misc.cpp
│   │   │   │       └── tests/
│   │   │   │           ├── Android.mk
│   │   │   │           ├── AttributeFinder_test.cpp
│   │   │   │           ├── BackupData_test.cpp
│   │   │   │           ├── ByteBucketArray_test.cpp
│   │   │   │           ├── ConfigLocale_test.cpp
│   │   │   │           ├── Config_test.cpp
│   │   │   │           ├── Idmap_test.cpp
│   │   │   │           ├── ObbFile_test.cpp
│   │   │   │           ├── ResTable_test.cpp
│   │   │   │           ├── Split_test.cpp
│   │   │   │           ├── TestHelpers.cpp
│   │   │   │           ├── TestHelpers.h
│   │   │   │           ├── Theme_test.cpp
│   │   │   │           ├── TypeWrappers_test.cpp
│   │   │   │           ├── ZipUtils_test.cpp
│   │   │   │           └── data/
│   │   │   │               ├── .gitignore
│   │   │   │               ├── app/
│   │   │   │               │   ├── AndroidManifest.xml
│   │   │   │               │   ├── R.h
│   │   │   │               │   ├── app_arsc.h
│   │   │   │               │   ├── build
│   │   │   │               │   └── res/
│   │   │   │               │       └── values/
│   │   │   │               │           └── values.xml
│   │   │   │               ├── basic/
│   │   │   │               │   ├── AndroidManifest.xml
│   │   │   │               │   ├── R.h
│   │   │   │               │   ├── basic_arsc.h
│   │   │   │               │   ├── build
│   │   │   │               │   ├── res/
│   │   │   │               │   │   ├── layout/
│   │   │   │               │   │   │   └── main.xml
│   │   │   │               │   │   ├── layout-fr-sw600dp/
│   │   │   │               │   │   │   └── main.xml
│   │   │   │               │   │   ├── values/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   ├── values-de/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   ├── values-fr/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   ├── values-hdpi/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   ├── values-sv/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   ├── values-xhdpi/
│   │   │   │               │   │   │   └── values.xml
│   │   │   │               │   │   └── values-xxhdpi/
│   │   │   │               │   │       └── values.xml
│   │   │   │               │   ├── split_de_fr_arsc.h
│   │   │   │               │   ├── split_hdpi_v4_arsc.h
│   │   │   │               │   ├── split_xhdpi_v4_arsc.h
│   │   │   │               │   └── split_xxhdpi_v4_arsc.h
│   │   │   │               ├── feature/
│   │   │   │               │   ├── AndroidManifest.xml
│   │   │   │               │   ├── build
│   │   │   │               │   ├── feature_arsc.h
│   │   │   │               │   └── res/
│   │   │   │               │       └── values/
│   │   │   │               │           └── values.xml
│   │   │   │               ├── lib/
│   │   │   │               │   ├── AndroidManifest.xml
│   │   │   │               │   ├── R.h
│   │   │   │               │   ├── build
│   │   │   │               │   ├── lib_arsc.h
│   │   │   │               │   └── res/
│   │   │   │               │       └── values/
│   │   │   │               │           └── values.xml
│   │   │   │               ├── overlay/
│   │   │   │               │   ├── AndroidManifest.xml
│   │   │   │               │   ├── build
│   │   │   │               │   ├── overlay_arsc.h
│   │   │   │               │   └── res/
│   │   │   │               │       └── values/
│   │   │   │               │           └── values.xml
│   │   │   │               └── system/
│   │   │   │                   ├── AndroidManifest.xml
│   │   │   │                   ├── R.h
│   │   │   │                   ├── build
│   │   │   │                   ├── res/
│   │   │   │                   │   └── values/
│   │   │   │                   │       └── themes.xml
│   │   │   │                   └── system_arsc.h
│   │   │   └── tools/
│   │   │       └── aapt/
│   │   │           ├── AaptAssets.cpp
│   │   │           ├── AaptAssets.h
│   │   │           ├── AaptConfig.cpp
│   │   │           ├── AaptConfig.h
│   │   │           ├── AaptUtil.cpp
│   │   │           ├── AaptUtil.h
│   │   │           ├── AaptXml.cpp
│   │   │           ├── AaptXml.h
│   │   │           ├── Android.mk
│   │   │           ├── ApkBuilder.cpp
│   │   │           ├── ApkBuilder.h
│   │   │           ├── Bundle.h
│   │   │           ├── CacheUpdater.h
│   │   │           ├── Command.cpp
│   │   │           ├── ConfigDescription.h
│   │   │           ├── CrunchCache.cpp
│   │   │           ├── CrunchCache.h
│   │   │           ├── DirectoryWalker.h
│   │   │           ├── FileFinder.cpp
│   │   │           ├── FileFinder.h
│   │   │           ├── Images.cpp
│   │   │           ├── Images.h
│   │   │           ├── IndentPrinter.h
│   │   │           ├── Main.cpp
│   │   │           ├── Main.h
│   │   │           ├── NOTICE
│   │   │           ├── OutputSet.h
│   │   │           ├── Package.cpp
│   │   │           ├── Resource.cpp
│   │   │           ├── ResourceFilter.cpp
│   │   │           ├── ResourceFilter.h
│   │   │           ├── ResourceIdCache.cpp
│   │   │           ├── ResourceIdCache.h
│   │   │           ├── ResourceTable.cpp
│   │   │           ├── ResourceTable.h
│   │   │           ├── SdkConstants.h
│   │   │           ├── SourcePos.cpp
│   │   │           ├── SourcePos.h
│   │   │           ├── StringPool.cpp
│   │   │           ├── StringPool.h
│   │   │           ├── Symbol.h
│   │   │           ├── WorkQueue.cpp
│   │   │           ├── WorkQueue.h
│   │   │           ├── XMLNode.cpp
│   │   │           ├── XMLNode.h
│   │   │           ├── ZipEntry.cpp
│   │   │           ├── ZipEntry.h
│   │   │           ├── ZipFile.cpp
│   │   │           ├── ZipFile.h
│   │   │           ├── pseudolocalize.cpp
│   │   │           ├── pseudolocalize.h
│   │   │           └── tests/
│   │   │               ├── AaptConfig_test.cpp
│   │   │               ├── AaptGroupEntry_test.cpp
│   │   │               ├── CrunchCache_test.cpp
│   │   │               ├── FileFinder_test.cpp
│   │   │               ├── MockCacheUpdater.h
│   │   │               ├── MockDirectoryWalker.h
│   │   │               ├── MockFileFinder.h
│   │   │               ├── Pseudolocales_test.cpp
│   │   │               ├── ResourceFilter_test.cpp
│   │   │               ├── ResourceTable_test.cpp
│   │   │               ├── TestHelper.h
│   │   │               └── plurals/
│   │   │                   ├── AndroidManifest.xml
│   │   │                   ├── res/
│   │   │                   │   └── values/
│   │   │                   │       └── strings.xml
│   │   │                   └── run.sh
│   │   └── native/
│   │       └── include/
│   │           ├── android/
│   │           │   ├── asset_manager.h
│   │           │   ├── asset_manager_jni.h
│   │           │   ├── bitmap.h
│   │           │   ├── choreographer.h
│   │           │   ├── configuration.h
│   │           │   ├── input.h
│   │           │   ├── keycodes.h
│   │           │   ├── looper.h
│   │           │   ├── multinetwork.h
│   │           │   ├── native_activity.h
│   │           │   ├── native_window.h
│   │           │   ├── native_window_jni.h
│   │           │   ├── obb.h
│   │           │   ├── rect.h
│   │           │   ├── sensor.h
│   │           │   ├── storage_manager.h
│   │           │   ├── trace.h
│   │           │   └── window.h
│   │           ├── batteryservice/
│   │           │   ├── BatteryService.h
│   │           │   ├── IBatteryPropertiesListener.h
│   │           │   └── IBatteryPropertiesRegistrar.h
│   │           ├── binder/
│   │           │   ├── AppOpsManager.h
│   │           │   ├── Binder.h
│   │           │   ├── BinderService.h
│   │           │   ├── BpBinder.h
│   │           │   ├── BufferedTextOutput.h
│   │           │   ├── Debug.h
│   │           │   ├── IAppOpsCallback.h
│   │           │   ├── IAppOpsService.h
│   │           │   ├── IBatteryStats.h
│   │           │   ├── IBinder.h
│   │           │   ├── IInterface.h
│   │           │   ├── IMediaResourceMonitor.h
│   │           │   ├── IMemory.h
│   │           │   ├── IPCThreadState.h
│   │           │   ├── IPermissionController.h
│   │           │   ├── IProcessInfoService.h
│   │           │   ├── IResultReceiver.h
│   │           │   ├── IServiceManager.h
│   │           │   ├── MemoryBase.h
│   │           │   ├── MemoryDealer.h
│   │           │   ├── MemoryHeapBase.h
│   │           │   ├── Parcel.h
│   │           │   ├── Parcelable.h
│   │           │   ├── PermissionCache.h
│   │           │   ├── PersistableBundle.h
│   │           │   ├── ProcessInfoService.h
│   │           │   ├── ProcessState.h
│   │           │   ├── Status.h
│   │           │   └── TextOutput.h
│   │           ├── diskusage/
│   │           │   └── dirsize.h
│   │           ├── gui/
│   │           │   ├── BitTube.h
│   │           │   ├── BufferItem.h
│   │           │   ├── BufferItemConsumer.h
│   │           │   ├── BufferQueue.h
│   │           │   ├── BufferQueueConsumer.h
│   │           │   ├── BufferQueueCore.h
│   │           │   ├── BufferQueueDefs.h
│   │           │   ├── BufferQueueProducer.h
│   │           │   ├── BufferSlot.h
│   │           │   ├── ConsumerBase.h
│   │           │   ├── CpuConsumer.h
│   │           │   ├── DisplayEventReceiver.h
│   │           │   ├── GLConsumer.h
│   │           │   ├── GraphicBufferAlloc.h
│   │           │   ├── GuiConfig.h
│   │           │   ├── IConsumerListener.h
│   │           │   ├── IDisplayEventConnection.h
│   │           │   ├── IGraphicBufferAlloc.h
│   │           │   ├── IGraphicBufferConsumer.h
│   │           │   ├── IGraphicBufferProducer.h
│   │           │   ├── IProducerListener.h
│   │           │   ├── ISensorEventConnection.h
│   │           │   ├── ISensorServer.h
│   │           │   ├── ISurfaceComposer.h
│   │           │   ├── ISurfaceComposerClient.h
│   │           │   ├── Sensor.h
│   │           │   ├── SensorEventQueue.h
│   │           │   ├── SensorManager.h
│   │           │   ├── StreamSplitter.h
│   │           │   ├── Surface.h
│   │           │   ├── SurfaceComposerClient.h
│   │           │   └── SurfaceControl.h
│   │           ├── input/
│   │           │   ├── IInputFlinger.h
│   │           │   ├── Input.h
│   │           │   ├── InputDevice.h
│   │           │   ├── InputEventLabels.h
│   │           │   ├── InputTransport.h
│   │           │   ├── KeyCharacterMap.h
│   │           │   ├── KeyLayoutMap.h
│   │           │   ├── Keyboard.h
│   │           │   ├── VelocityControl.h
│   │           │   ├── VelocityTracker.h
│   │           │   └── VirtualKeyMap.h
│   │           ├── media/
│   │           │   ├── drm/
│   │           │   │   └── DrmAPI.h
│   │           │   ├── editor/
│   │           │   │   └── II420ColorConverter.h
│   │           │   ├── hardware/
│   │           │   │   ├── CryptoAPI.h
│   │           │   │   ├── HDCPAPI.h
│   │           │   │   ├── HardwareAPI.h
│   │           │   │   ├── MetadataBufferType.h
│   │           │   │   ├── OMXPluginBase.h
│   │           │   │   └── VideoAPI.h
│   │           │   └── openmax/
│   │           │       ├── OMX_AsString.h
│   │           │       ├── OMX_Audio.h
│   │           │       ├── OMX_AudioExt.h
│   │           │       ├── OMX_Component.h
│   │           │       ├── OMX_ContentPipe.h
│   │           │       ├── OMX_Core.h
│   │           │       ├── OMX_IVCommon.h
│   │           │       ├── OMX_Image.h
│   │           │       ├── OMX_Index.h
│   │           │       ├── OMX_IndexExt.h
│   │           │       ├── OMX_Other.h
│   │           │       ├── OMX_Types.h
│   │           │       ├── OMX_Video.h
│   │           │       └── OMX_VideoExt.h
│   │           ├── powermanager/
│   │           │   ├── IPowerManager.h
│   │           │   └── PowerManager.h
│   │           ├── private/
│   │           │   ├── binder/
│   │           │   │   ├── Static.h
│   │           │   │   └── binder_module.h
│   │           │   ├── gui/
│   │           │   │   ├── ComposerService.h
│   │           │   │   ├── LayerState.h
│   │           │   │   └── SyncFeatures.h
│   │           │   └── ui/
│   │           │       └── RegionHelper.h
│   │           └── ui/
│   │               ├── ANativeObjectBase.h
│   │               ├── DisplayInfo.h
│   │               ├── DisplayStatInfo.h
│   │               ├── Fence.h
│   │               ├── FrameStats.h
│   │               ├── GraphicBuffer.h
│   │               ├── GraphicBufferAllocator.h
│   │               ├── GraphicBufferMapper.h
│   │               ├── HdrCapabilities.h
│   │               ├── PixelFormat.h
│   │               ├── Point.h
│   │               ├── Rect.h
│   │               ├── Region.h
│   │               ├── TMatHelpers.h
│   │               ├── TVecHelpers.h
│   │               ├── UiConfig.h
│   │               ├── mat4.h
│   │               ├── vec2.h
│   │               ├── vec3.h
│   │               └── vec4.h
│   ├── libnativehelper/
│   │   ├── ALog-priv.h
│   │   ├── Android.mk
│   │   ├── AsynchronousCloseMonitor.cpp
│   │   ├── JNIHelp.cpp
│   │   ├── JniConstants.cpp
│   │   ├── JniInvocation.cpp
│   │   ├── MODULE_LICENSE_APACHE2
│   │   ├── NOTICE
│   │   ├── README
│   │   ├── include/
│   │   │   └── nativehelper/
│   │   │       ├── AsynchronousCloseMonitor.h
│   │   │       ├── JNIHelp.h
│   │   │       ├── JniConstants.h
│   │   │       ├── JniInvocation.h
│   │   │       ├── ScopedBytes.h
│   │   │       ├── ScopedFd.h
│   │   │       ├── ScopedLocalFrame.h
│   │   │       ├── ScopedLocalRef.h
│   │   │       ├── ScopedPrimitiveArray.h
│   │   │       ├── ScopedStringChars.h
│   │   │       ├── ScopedUtfChars.h
│   │   │       ├── UniquePtr.h
│   │   │       ├── jni.h
│   │   │       └── toStringArray.h
│   │   ├── tests/
│   │   │   ├── Android.mk
│   │   │   └── JniInvocation_test.cpp
│   │   └── toStringArray.cpp
│   ├── patch/
│   │   ├── 0001-patch-code.patch
│   │   ├── 0002-static-build.patch
│   │   └── 003-rewrite-parseResourceName.patch
│   └── system/
│       └── core/
│           ├── base/
│           │   ├── .clang-format
│           │   ├── Android.mk
│           │   ├── CPPLINT.cfg
│           │   ├── errors_test.cpp
│           │   ├── errors_unix.cpp
│           │   ├── errors_windows.cpp
│           │   ├── file.cpp
│           │   ├── file_test.cpp
│           │   ├── include/
│           │   │   └── android-base/
│           │   │       ├── errors.h
│           │   │       ├── file.h
│           │   │       ├── logging.h
│           │   │       ├── macros.h
│           │   │       ├── memory.h
│           │   │       ├── parseint.h
│           │   │       ├── parsenetaddress.h
│           │   │       ├── stringprintf.h
│           │   │       ├── strings.h
│           │   │       ├── test_utils.h
│           │   │       ├── thread_annotations.h
│           │   │       ├── unique_fd.h
│           │   │       └── utf8.h
│           │   ├── logging.cpp
│           │   ├── logging_test.cpp
│           │   ├── parseint_test.cpp
│           │   ├── parsenetaddress.cpp
│           │   ├── parsenetaddress_test.cpp
│           │   ├── stringprintf.cpp
│           │   ├── stringprintf_test.cpp
│           │   ├── strings.cpp
│           │   ├── strings_test.cpp
│           │   ├── test_main.cpp
│           │   ├── test_utils.cpp
│           │   ├── utf8.cpp
│           │   └── utf8_test.cpp
│           ├── include/
│           │   ├── android/
│           │   │   └── log.h
│           │   ├── backtrace/
│           │   │   ├── Backtrace.h
│           │   │   ├── BacktraceMap.h
│           │   │   └── backtrace_constants.h
│           │   ├── binderwrapper/
│           │   │   ├── binder_test_base.h
│           │   │   ├── binder_wrapper.h
│           │   │   └── stub_binder_wrapper.h
│           │   ├── cutils/
│           │   │   ├── android_reboot.h
│           │   │   ├── ashmem.h
│           │   │   ├── atomic.h
│           │   │   ├── bitops.h
│           │   │   ├── compiler.h
│           │   │   ├── config_utils.h
│           │   │   ├── debugger.h
│           │   │   ├── fs.h
│           │   │   ├── hashmap.h
│           │   │   ├── iosched_policy.h
│           │   │   ├── jstring.h
│           │   │   ├── klog.h
│           │   │   ├── list.h
│           │   │   ├── log.h
│           │   │   ├── memory.h
│           │   │   ├── misc.h
│           │   │   ├── multiuser.h
│           │   │   ├── native_handle.h
│           │   │   ├── open_memstream.h
│           │   │   ├── partition_utils.h
│           │   │   ├── process_name.h
│           │   │   ├── properties.h
│           │   │   ├── qtaguid.h
│           │   │   ├── record_stream.h
│           │   │   ├── sched_policy.h
│           │   │   ├── sockets.h
│           │   │   ├── str_parms.h
│           │   │   ├── threads.h
│           │   │   ├── trace.h
│           │   │   └── uevent.h
│           │   ├── diskconfig/
│           │   │   └── diskconfig.h
│           │   ├── log/
│           │   │   ├── event_tag_map.h
│           │   │   ├── log.h
│           │   │   ├── log_read.h
│           │   │   ├── logd.h
│           │   │   ├── logger.h
│           │   │   ├── logprint.h
│           │   │   └── uio.h
│           │   ├── memtrack/
│           │   │   └── memtrack.h
│           │   ├── mincrypt/
│           │   │   ├── dsa_sig.h
│           │   │   ├── hash-internal.h
│           │   │   ├── p256.h
│           │   │   ├── p256_ecdsa.h
│           │   │   ├── rsa.h
│           │   │   ├── sha.h
│           │   │   └── sha256.h
│           │   ├── nativebridge/
│           │   │   └── native_bridge.h
│           │   ├── netutils/
│           │   │   └── ifc.h
│           │   ├── private/
│           │   │   ├── android_filesystem_capability.h
│           │   │   ├── android_filesystem_config.h
│           │   │   ├── android_logger.h
│           │   │   └── canned_fs_config.h
│           │   ├── system/
│           │   │   ├── camera.h
│           │   │   ├── graphics.h
│           │   │   ├── radio.h
│           │   │   ├── thread_defs.h
│           │   │   └── window.h
│           │   ├── sysutils/
│           │   │   ├── FrameworkClient.h
│           │   │   ├── FrameworkCommand.h
│           │   │   ├── FrameworkListener.h
│           │   │   ├── List.h
│           │   │   ├── NetlinkEvent.h
│           │   │   ├── NetlinkListener.h
│           │   │   ├── ServiceManager.h
│           │   │   ├── SocketClient.h
│           │   │   ├── SocketClientCommand.h
│           │   │   └── SocketListener.h
│           │   ├── usbhost/
│           │   │   └── usbhost.h
│           │   ├── utils/
│           │   │   ├── AndroidThreads.h
│           │   │   ├── Atomic.h
│           │   │   ├── BitSet.h
│           │   │   ├── BlobCache.h
│           │   │   ├── ByteOrder.h
│           │   │   ├── CallStack.h
│           │   │   ├── Compat.h
│           │   │   ├── Condition.h
│           │   │   ├── Debug.h
│           │   │   ├── Endian.h
│           │   │   ├── Errors.h
│           │   │   ├── FileMap.h
│           │   │   ├── Flattenable.h
│           │   │   ├── Functor.h
│           │   │   ├── JenkinsHash.h
│           │   │   ├── KeyedVector.h
│           │   │   ├── LinearTransform.h
│           │   │   ├── List.h
│           │   │   ├── Log.h
│           │   │   ├── Looper.h
│           │   │   ├── LruCache.h
│           │   │   ├── Mutex.h
│           │   │   ├── NativeHandle.h
│           │   │   ├── Printer.h
│           │   │   ├── ProcessCallStack.h
│           │   │   ├── PropertyMap.h
│           │   │   ├── RWLock.h
│           │   │   ├── RefBase.h
│           │   │   ├── Singleton.h
│           │   │   ├── SortedVector.h
│           │   │   ├── StopWatch.h
│           │   │   ├── String16.h
│           │   │   ├── String8.h
│           │   │   ├── StrongPointer.h
│           │   │   ├── SystemClock.h
│           │   │   ├── Thread.h
│           │   │   ├── ThreadDefs.h
│           │   │   ├── Timers.h
│           │   │   ├── Tokenizer.h
│           │   │   ├── Trace.h
│           │   │   ├── TypeHelpers.h
│           │   │   ├── Unicode.h
│           │   │   ├── Vector.h
│           │   │   ├── VectorImpl.h
│           │   │   ├── ashmem.h
│           │   │   ├── misc.h
│           │   │   └── threads.h
│           │   └── ziparchive/
│           │       ├── zip_archive.h
│           │       ├── zip_archive_stream_entry.h
│           │       └── zip_writer.h
│           ├── libcutils/
│           │   ├── Android.mk
│           │   ├── MODULE_LICENSE_APACHE2
│           │   ├── NOTICE
│           │   ├── android_reboot.c
│           │   ├── arch-arm/
│           │   │   └── memset32.S
│           │   ├── arch-arm64/
│           │   │   └── android_memset.S
│           │   ├── arch-mips/
│           │   │   └── android_memset.c
│           │   ├── arch-x86/
│           │   │   ├── android_memset16.S
│           │   │   ├── android_memset32.S
│           │   │   └── cache.h
│           │   ├── arch-x86_64/
│           │   │   ├── android_memset16.S
│           │   │   ├── android_memset32.S
│           │   │   └── cache.h
│           │   ├── ashmem-dev.c
│           │   ├── ashmem-host.c
│           │   ├── atomic.c
│           │   ├── canned_fs_config.c
│           │   ├── config_utils.c
│           │   ├── debugger.c
│           │   ├── dlmalloc_stubs.c
│           │   ├── fs.c
│           │   ├── fs_config.c
│           │   ├── hashmap.c
│           │   ├── iosched_policy.c
│           │   ├── klog.c
│           │   ├── load_file.c
│           │   ├── multiuser.c
│           │   ├── native_handle.c
│           │   ├── open_memstream.c
│           │   ├── partition_utils.c
│           │   ├── process_name.c
│           │   ├── properties.c
│           │   ├── qtaguid.c
│           │   ├── record_stream.c
│           │   ├── sched_policy.c
│           │   ├── socket_inaddr_any_server_unix.c
│           │   ├── socket_inaddr_any_server_windows.c
│           │   ├── socket_local_client_unix.c
│           │   ├── socket_local_server_unix.c
│           │   ├── socket_local_unix.h
│           │   ├── socket_loopback_client_unix.c
│           │   ├── socket_loopback_server_unix.c
│           │   ├── socket_network_client_unix.c
│           │   ├── socket_network_client_windows.c
│           │   ├── sockets.cpp
│           │   ├── sockets_unix.cpp
│           │   ├── sockets_windows.cpp
│           │   ├── str_parms.c
│           │   ├── strdup16to8.c
│           │   ├── strdup8to16.c
│           │   ├── strlcpy.c
│           │   ├── tests/
│           │   │   ├── Android.mk
│           │   │   ├── MemsetTest.cpp
│           │   │   ├── PropertiesTest.cpp
│           │   │   └── test_str_parms.cpp
│           │   ├── threads.c
│           │   ├── trace-dev.c
│           │   ├── trace-host.c
│           │   └── uevent.c
│           ├── liblog/
│           │   ├── Android.bp
│           │   ├── Android.mk
│           │   ├── NOTICE
│           │   ├── README
│           │   ├── config_read.c
│           │   ├── config_read.h
│           │   ├── config_write.c
│           │   ├── config_write.h
│           │   ├── event.logtags
│           │   ├── event_tag_map.c
│           │   ├── fake_log_device.c
│           │   ├── fake_log_device.h
│           │   ├── fake_writer.c
│           │   ├── log_event_list.c
│           │   ├── log_event_write.c
│           │   ├── log_is_loggable.c
│           │   ├── log_portability.h
│           │   ├── log_time.cpp
│           │   ├── logd_reader.c
│           │   ├── logd_writer.c
│           │   ├── logger.h
│           │   ├── logger_lock.c
│           │   ├── logger_name.c
│           │   ├── logger_read.c
│           │   ├── logger_write.c
│           │   ├── logprint.c
│           │   ├── pmsg_reader.c
│           │   ├── pmsg_writer.c
│           │   ├── tests/
│           │   │   ├── Android.mk
│           │   │   ├── benchmark.h
│           │   │   ├── benchmark_main.cpp
│           │   │   ├── libc_test.cpp
│           │   │   ├── liblog_benchmark.cpp
│           │   │   └── liblog_test.cpp
│           │   └── uio.c
│           ├── libutils/
│           │   ├── Android.mk
│           │   ├── BlobCache.cpp
│           │   ├── CallStack.cpp
│           │   ├── CleanSpec.mk
│           │   ├── FileMap.cpp
│           │   ├── JenkinsHash.cpp
│           │   ├── LinearTransform.cpp
│           │   ├── Log.cpp
│           │   ├── Looper.cpp
│           │   ├── MODULE_LICENSE_APACHE2
│           │   ├── NOTICE
│           │   ├── NativeHandle.cpp
│           │   ├── Printer.cpp
│           │   ├── ProcessCallStack.cpp
│           │   ├── PropertyMap.cpp
│           │   ├── README
│           │   ├── RefBase.cpp
│           │   ├── SharedBuffer.cpp
│           │   ├── SharedBuffer.h
│           │   ├── SharedBufferTest.cpp
│           │   ├── Static.cpp
│           │   ├── StopWatch.cpp
│           │   ├── String16.cpp
│           │   ├── String8.cpp
│           │   ├── SystemClock.cpp
│           │   ├── Threads.cpp
│           │   ├── Timers.cpp
│           │   ├── Tokenizer.cpp
│           │   ├── Trace.cpp
│           │   ├── Unicode.cpp
│           │   ├── VectorImpl.cpp
│           │   ├── misc.cpp
│           │   ├── primes.py
│           │   └── tests/
│           │       ├── Android.mk
│           │       ├── BitSet_test.cpp
│           │       ├── BlobCache_test.cpp
│           │       ├── Looper_test.cpp
│           │       ├── LruCache_test.cpp
│           │       ├── String8_test.cpp
│           │       ├── StrongPointer_test.cpp
│           │       ├── TestHelpers.h
│           │       ├── Unicode_test.cpp
│           │       └── Vector_test.cpp
│           └── libziparchive/
│               ├── Android.mk
│               ├── entry_name_utils-inl.h
│               ├── entry_name_utils_test.cc
│               ├── zip_archive.cc
│               ├── zip_archive_common.h
│               ├── zip_archive_private.h
│               ├── zip_archive_stream_entry.cc
│               ├── zip_archive_test.cc
│               ├── zip_writer.cc
│               └── zip_writer_test.cc
├── atlas-aapt-old/
│   └── frameworks/
│       └── base/
│           ├── include/
│           │   └── androidfw/
│           │       ├── Asset.h
│           │       ├── AssetDir.h
│           │       ├── AssetManager.h
│           │       ├── BackupHelpers.h
│           │       ├── ByteBucketArray.h
│           │       ├── CursorWindow.h
│           │       ├── ObbFile.h
│           │       ├── ResourcePackageId.h
│           │       ├── ResourceTypes.h
│           │       ├── StreamingZipInflater.h
│           │       ├── TypeWrappers.h
│           │       ├── ZipFileRO.h
│           │       ├── ZipUtils.h
│           │       └── misc.h
│           ├── libs/
│           │   └── androidfw/
│           │       ├── Android.mk
│           │       ├── Asset.cpp
│           │       ├── AssetDir.cpp
│           │       ├── AssetManager.cpp
│           │       ├── BackupData.cpp
│           │       ├── BackupHelpers.cpp
│           │       ├── CursorWindow.cpp
│           │       ├── MODULE_LICENSE_APACHE2
│           │       ├── NOTICE
│           │       ├── ObbFile.cpp
│           │       ├── ResourceTypes.cpp
│           │       ├── StreamingZipInflater.cpp
│           │       ├── TypeWrappers.cpp
│           │       ├── ZipFileRO.cpp
│           │       ├── ZipUtils.cpp
│           │       ├── misc.cpp
│           │       └── tests/
│           │           ├── Android.mk
│           │           ├── BackupData_test.cpp
│           │           ├── ByteBucketArray_test.cpp
│           │           ├── ConfigLocale_test.cpp
│           │           ├── Config_test.cpp
│           │           ├── Idmap_test.cpp
│           │           ├── ObbFile_test.cpp
│           │           ├── ResTable_test.cpp
│           │           ├── Split_test.cpp
│           │           ├── TestHelpers.h
│           │           ├── Theme_test.cpp
│           │           ├── TypeWrappers_test.cpp
│           │           ├── ZipUtils_test.cpp
│           │           └── data/
│           │               ├── .gitignore
│           │               ├── app/
│           │               │   ├── AndroidManifest.xml
│           │               │   ├── R.h
│           │               │   ├── app_arsc.h
│           │               │   └── res/
│           │               │       └── values/
│           │               │           └── values.xml
│           │               ├── basic/
│           │               │   ├── AndroidManifest.xml
│           │               │   ├── R.h
│           │               │   ├── basic_arsc.h
│           │               │   ├── res/
│           │               │   │   ├── layout/
│           │               │   │   │   └── main.xml
│           │               │   │   ├── layout-fr-sw600dp/
│           │               │   │   │   └── main.xml
│           │               │   │   ├── values/
│           │               │   │   │   └── values.xml
│           │               │   │   ├── values-de/
│           │               │   │   │   └── values.xml
│           │               │   │   ├── values-fr/
│           │               │   │   │   └── values.xml
│           │               │   │   └── values-sv/
│           │               │   │       └── values.xml
│           │               │   └── split_de_fr_arsc.h
│           │               ├── feature/
│           │               │   ├── AndroidManifest.xml
│           │               │   ├── feature_arsc.h
│           │               │   └── res/
│           │               │       └── values/
│           │               │           └── values.xml
│           │               ├── lib/
│           │               │   ├── AndroidManifest.xml
│           │               │   ├── R.h
│           │               │   ├── lib_arsc.h
│           │               │   └── res/
│           │               │       └── values/
│           │               │           └── values.xml
│           │               ├── overlay/
│           │               │   ├── AndroidManifest.xml
│           │               │   ├── overlay_arsc.h
│           │               │   └── res/
│           │               │       └── values/
│           │               │           └── values.xml
│           │               └── system/
│           │                   ├── AndroidManifest.xml
│           │                   ├── R.h
│           │                   ├── res/
│           │                   │   └── values/
│           │                   │       └── themes.xml
│           │                   └── system_arsc.h
│           └── tools/
│               └── aapt/
│                   ├── AaptAssets.cpp
│                   ├── AaptAssets.h
│                   ├── AaptConfig.cpp
│                   ├── AaptConfig.h
│                   ├── AaptUtil.cpp
│                   ├── AaptUtil.h
│                   ├── AaptXml.cpp
│                   ├── AaptXml.h
│                   ├── Android.mk
│                   ├── ApkBuilder.cpp
│                   ├── ApkBuilder.h
│                   ├── Bundle.h
│                   ├── CacheUpdater.h
│                   ├── Command.cpp
│                   ├── ConfigDescription.h
│                   ├── CrunchCache.cpp
│                   ├── CrunchCache.h
│                   ├── DirectoryWalker.h
│                   ├── FileFinder.cpp
│                   ├── FileFinder.h
│                   ├── Images.cpp
│                   ├── Images.h
│                   ├── IndentPrinter.h
│                   ├── Main.cpp
│                   ├── Main.h
│                   ├── NOTICE
│                   ├── OutputSet.h
│                   ├── Package.cpp
│                   ├── Resource.cpp
│                   ├── ResourceFilter.cpp
│                   ├── ResourceFilter.h
│                   ├── ResourceIdCache.cpp
│                   ├── ResourceIdCache.h
│                   ├── ResourceTable.cpp
│                   ├── ResourceTable.h
│                   ├── SourcePos.cpp
│                   ├── SourcePos.h
│                   ├── StringPool.cpp
│                   ├── StringPool.h
│                   ├── WorkQueue.cpp
│                   ├── WorkQueue.h
│                   ├── XMLNode.cpp
│                   ├── XMLNode.h
│                   ├── ZipEntry.cpp
│                   ├── ZipEntry.h
│                   ├── ZipFile.cpp
│                   ├── ZipFile.h
│                   ├── printapk.cpp
│                   ├── pseudolocalize.cpp
│                   ├── pseudolocalize.h
│                   ├── qsort_r_compat.c
│                   ├── qsort_r_compat.h
│                   └── tests/
│                       ├── AaptConfig_test.cpp
│                       ├── AaptGroupEntry_test.cpp
│                       ├── CrunchCache_test.cpp
│                       ├── FileFinder_test.cpp
│                       ├── MockCacheUpdater.h
│                       ├── MockDirectoryWalker.h
│                       ├── MockFileFinder.h
│                       ├── ResourceFilter_test.cpp
│                       ├── TestHelper.h
│                       └── plurals/
│                           ├── AndroidManifest.xml
│                           ├── res/
│                           │   └── values/
│                           │       └── strings.xml
│                           └── run.sh
├── atlas-core/
│   ├── .gitignore
│   ├── README.md
│   ├── README.zh_cn.md
│   ├── build.gradle
│   ├── gradle/
│   │   └── wrapper/
│   │       ├── gradle-wrapper.jar
│   │       └── gradle-wrapper.properties
│   ├── gradlew
│   ├── gradlew.bat
│   ├── lint.xml
│   ├── proguard.cfg
│   ├── project.properties
│   ├── publish.sh
│   ├── settings.gradle
│   └── src/
│       └── main/
│           ├── AndroidManifest.xml
│           ├── aidl/
│           │   └── android/
│           │       ├── app/
│           │       │   ├── IActivityManager/
│           │       │   │   └── ContentProviderHolder.aidl
│           │       │   └── IServiceConnection.aidl
│           │       └── taobao/
│           │           └── atlas/
│           │               └── runtime/
│           │                   ├── ApplicationInitException.java
│           │                   └── newcomponent/
│           │                       └── service/
│           │                           └── IDelegateBinder.aidl
│           ├── java/
│           │   ├── android/
│           │   │   ├── support/
│           │   │   │   └── multidex/
│           │   │   │       ├── DexElementsMaker.java
│           │   │   │       ├── DexElementsMethodInvokerV14.java
│           │   │   │       ├── DexElementsMethodInvokerV19.java
│           │   │   │       ├── IDexElementsMaker.java
│           │   │   │       ├── IDexElementsMethodInvoker.java
│           │   │   │       ├── MultiDex.java
│           │   │   │       ├── MultiDexExtractor.java
│           │   │   │       └── ZipUtil.java
│           │   │   └── taobao/
│           │   │       └── atlas/
│           │   │           ├── bridge/
│           │   │           │   └── BridgeApplicationDelegate.java
│           │   │           ├── bundleInfo/
│           │   │           │   ├── AtlasBundleInfoGenerator.java
│           │   │           │   ├── AtlasBundleInfoManager.java
│           │   │           │   ├── BundleListing.java
│           │   │           │   └── BundleListingUtil.java
│           │   │           ├── framework/
│           │   │           │   ├── Atlas.java
│           │   │           │   ├── Framework.java
│           │   │           │   └── FrameworkProperties.java
│           │   │           ├── hack/
│           │   │           │   ├── AndroidHack.java
│           │   │           │   ├── AssertionArrayException.java
│           │   │           │   ├── AtlasHacks.java
│           │   │           │   ├── Hack.java
│           │   │           │   └── Interception.java
│           │   │           ├── profile/
│           │   │           │   └── AtlasProfile.java
│           │   │           ├── runtime/
│           │   │           │   ├── ActivityLifeCycleObserver.java
│           │   │           │   ├── ActivityTaskMgr.java
│           │   │           │   ├── ApplicationInvoker.java
│           │   │           │   ├── AtlasPreLauncher.java
│           │   │           │   ├── BundleIniter.java
│           │   │           │   ├── FrameworkLifecycleHandler.java
│           │   │           │   ├── LowDiskException.java
│           │   │           │   └── RuntimeVariables.java
│           │   │           ├── startup/
│           │   │           │   ├── AtlasBridgeApplication.java
│           │   │           │   ├── DexFileCompat.java
│           │   │           │   ├── KernalVersionManager.java
│           │   │           │   ├── NClassLoader.java
│           │   │           │   └── patch/
│           │   │           │       ├── CombineDexMerger.java
│           │   │           │       ├── CombineDexVerifier.java
│           │   │           │       ├── KernalBundle.java
│           │   │           │       ├── KernalBundleArchive.java
│           │   │           │       ├── KernalConstants.java
│           │   │           │       ├── KernalFileLock.java
│           │   │           │       ├── PatchMerger.java
│           │   │           │       ├── PatchVerifier.java
│           │   │           │       └── releaser/
│           │   │           │           ├── BundleReleaser.java
│           │   │           │           ├── DexReleaser.java
│           │   │           │           ├── PatchDexProfile.java
│           │   │           │           └── ReleaseType.java
│           │   │           ├── util/
│           │   │           │   ├── ApkUtils.java
│           │   │           │   ├── AtlasFileLock.java
│           │   │           │   ├── BundleLock.java
│           │   │           │   ├── FileUtils.java
│           │   │           │   ├── IOUtil.java
│           │   │           │   ├── RefectUtils.java
│           │   │           │   ├── SoLoader.java
│           │   │           │   ├── StringUtils.java
│           │   │           │   ├── WrapperUtil.java
│           │   │           │   └── log/
│           │   │           │       ├── IAlarmer.java
│           │   │           │       ├── ILog.java
│           │   │           │       ├── IMonitor.java
│           │   │           │       └── impl/
│           │   │           │           ├── AtlasAlarmer.java
│           │   │           │           ├── AtlasLog.java
│           │   │           │           └── AtlasMonitor.java
│           │   │           └── versionInfo/
│           │   │               └── BaselineInfoManager.java
│           │   └── org/
│           │       └── osgi/
│           │           └── framework/
│           │               ├── Bundle.java
│           │               ├── BundleEvent.java
│           │               ├── BundleException.java
│           │               ├── BundleListener.java
│           │               ├── Constants.java
│           │               ├── FrameworkEvent.java
│           │               ├── FrameworkListener.java
│           │               └── SynchronousBundleListener.java
│           └── res/
│               ├── drawable/
│               │   └── atlas_waitview.xml
│               ├── layout/
│               │   └── atlas_progress.xml
│               └── values/
│                   └── style_atlas.xml
├── atlas-demo/
│   ├── .gitignore
│   ├── AtlasDemo/
│   │   ├── .gitignore
│   │   ├── AwoForBundle.txt
│   │   ├── AwoForHost.txt
│   │   ├── README.md
│   │   ├── Tpatch.txt
│   │   ├── activitygroupcompat/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── taobao/
│   │   │           │           └── android/
│   │   │           │               ├── ActivityGroupDelegate.java
│   │   │           │               └── LocalActivityManager.java
│   │   │           └── res/
│   │   │               └── values/
│   │   │                   └── strings.xml
│   │   ├── app/
│   │   │   ├── .gitignore
│   │   │   ├── .gradletasknamecache
│   │   │   ├── build.gradle
│   │   │   ├── dexPatchWraper.gradle
│   │   │   ├── jd-gui.cfg
│   │   │   ├── proguard-rules.pro
│   │   │   ├── push_dexpatch_out.sh
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── demo/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── taobao/
│   │   │           │           ├── demo/
│   │   │           │           │   ├── DemoApplication.java
│   │   │           │           │   ├── DemoPreLaunch.java
│   │   │           │           │   ├── MainActivity.java
│   │   │           │           │   ├── MyContentProvider.java
│   │   │           │           │   ├── RemoteDemoActivity.java
│   │   │           │           │   ├── UpdateDemoActivity.java
│   │   │           │           │   └── databind/
│   │   │           │           │       ├── DataBundleAarActivity.java
│   │   │           │           │       └── User.java
│   │   │           │           └── update/
│   │   │           │               └── Updater.java
│   │   │           └── res/
│   │   │               ├── drawable/
│   │   │               │   ├── ic_dashboard_black_24dp.xml
│   │   │               │   ├── ic_home_black_24dp.xml
│   │   │               │   ├── ic_notifications_black_24dp.xml
│   │   │               │   └── side_nav_bar.xml
│   │   │               ├── layout/
│   │   │               │   ├── aar_databind_main.xml
│   │   │               │   ├── activity_main.xml
│   │   │               │   ├── activity_navigation.xml
│   │   │               │   ├── activity_scrolling.xml
│   │   │               │   ├── activity_update.xml
│   │   │               │   ├── app_bar_main.xml
│   │   │               │   ├── content_main.xml
│   │   │               │   ├── content_navigation_main.xml
│   │   │               │   ├── content_scrolling.xml
│   │   │               │   ├── guild_remote_bundle.xml
│   │   │               │   └── nav_header_main.xml
│   │   │               ├── menu/
│   │   │               │   ├── activity_main_drawer.xml
│   │   │               │   ├── main.xml
│   │   │               │   └── navigation.xml
│   │   │               └── values/
│   │   │                   ├── colors.xml
│   │   │                   ├── dimens.xml
│   │   │                   ├── main_style.xml
│   │   │                   └── strings.xml
│   │   ├── build.gradle
│   │   ├── databindbundle/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── taobao/
│   │   │           │           └── databindbundle/
│   │   │           │               └── databind/
│   │   │           │                   ├── DataBundleSampleActivity.java
│   │   │           │                   └── User.java
│   │   │           └── res/
│   │   │               ├── layout/
│   │   │               │   └── bundle_databind_main.xml
│   │   │               └── values/
│   │   │                   └── strings.xml
│   │   ├── databindinglibrary/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── taobao/
│   │   │           │           └── databinding/
│   │   │           │               └── library/
│   │   │           │                   ├── DataBingAarActivity.java
│   │   │           │                   └── User.java
│   │   │           └── res/
│   │   │               └── layout/
│   │   │                   └── aar_databind.xml
│   │   ├── firstbundle/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── taobao/
│   │   │           │           └── firstbundle/
│   │   │           │               ├── FirstBundleActivity.java
│   │   │           │               ├── FirstBundleService.java
│   │   │           │               ├── UseremoteActivity.java
│   │   │           │               └── fragment/
│   │   │           │                   ├── BlankFragment.java
│   │   │           │                   ├── DummyContent.java
│   │   │           │                   ├── ItemFragment.java
│   │   │           │                   └── MyItemRecyclerViewAdapter.java
│   │   │           └── res/
│   │   │               ├── layout/
│   │   │               │   ├── activity_firstbundle.xml
│   │   │               │   ├── activity_useremote.xml
│   │   │               │   ├── activity_web_view.xml
│   │   │               │   ├── fragment_blank.xml
│   │   │               │   ├── fragment_item.xml
│   │   │               │   └── fragment_item_list.xml
│   │   │               └── values/
│   │   │                   └── strings.xml
│   │   ├── gradle/
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   ├── gradle.properties
│   │   ├── gradlew
│   │   ├── gradlew.bat
│   │   ├── lottie/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── gradle.properties
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── airbnb/
│   │   │           │           └── lottie/
│   │   │           │               ├── AnimatableColorValue.java
│   │   │           │               ├── AnimatableFloatValue.java
│   │   │           │               ├── AnimatableIntegerValue.java
│   │   │           │               ├── AnimatablePathValue.java
│   │   │           │               ├── AnimatablePointValue.java
│   │   │           │               ├── AnimatableScaleValue.java
│   │   │           │               ├── AnimatableShapeValue.java
│   │   │           │               ├── AnimatableSplitDimensionPathValue.java
│   │   │           │               ├── AnimatableTransform.java
│   │   │           │               ├── AnimatableValue.java
│   │   │           │               ├── AnimatableValueParser.java
│   │   │           │               ├── BaseAnimatableValue.java
│   │   │           │               ├── BaseKeyframeAnimation.java
│   │   │           │               ├── BaseLayer.java
│   │   │           │               ├── BitmapCanvas.java
│   │   │           │               ├── Cancellable.java
│   │   │           │               ├── CanvasPool.java
│   │   │           │               ├── CircleShape.java
│   │   │           │               ├── ColorFactory.java
│   │   │           │               ├── ColorKeyframeAnimation.java
│   │   │           │               ├── CompositionLayer.java
│   │   │           │               ├── CompositionLoader.java
│   │   │           │               ├── Content.java
│   │   │           │               ├── ContentGroup.java
│   │   │           │               ├── CubicCurveData.java
│   │   │           │               ├── DrawingContent.java
│   │   │           │               ├── EllipseContent.java
│   │   │           │               ├── FileCompositionLoader.java
│   │   │           │               ├── FillContent.java
│   │   │           │               ├── FloatKeyframeAnimation.java
│   │   │           │               ├── GammaEvaluator.java
│   │   │           │               ├── ImageAssetBitmapManager.java
│   │   │           │               ├── ImageAssetDelegate.java
│   │   │           │               ├── ImageLayer.java
│   │   │           │               ├── IntegerKeyframeAnimation.java
│   │   │           │               ├── JsonCompositionLoader.java
│   │   │           │               ├── JsonUtils.java
│   │   │           │               ├── Keyframe.java
│   │   │           │               ├── KeyframeAnimation.java
│   │   │           │               ├── L.java
│   │   │           │               ├── Layer.java
│   │   │           │               ├── LottieAnimationView.java
│   │   │           │               ├── LottieComposition.java
│   │   │           │               ├── LottieDrawable.java
│   │   │           │               ├── LottieImageAsset.java
│   │   │           │               ├── Mask.java
│   │   │           │               ├── MaskKeyframeAnimation.java
│   │   │           │               ├── MergePaths.java
│   │   │           │               ├── MergePathsContent.java
│   │   │           │               ├── MiscUtils.java
│   │   │           │               ├── ModifierContent.java
│   │   │           │               ├── NullLayer.java
│   │   │           │               ├── OnCompositionLoadedListener.java
│   │   │           │               ├── PathContent.java
│   │   │           │               ├── PathKeyframe.java
│   │   │           │               ├── PathKeyframeAnimation.java
│   │   │           │               ├── PointFFactory.java
│   │   │           │               ├── PointKeyframeAnimation.java
│   │   │           │               ├── PolystarContent.java
│   │   │           │               ├── PolystarShape.java
│   │   │           │               ├── RectangleContent.java
│   │   │           │               ├── RectangleShape.java
│   │   │           │               ├── ScaleKeyframeAnimation.java
│   │   │           │               ├── ScaleXY.java
│   │   │           │               ├── ShapeContent.java
│   │   │           │               ├── ShapeData.java
│   │   │           │               ├── ShapeFill.java
│   │   │           │               ├── ShapeGroup.java
│   │   │           │               ├── ShapeKeyframeAnimation.java
│   │   │           │               ├── ShapeLayer.java
│   │   │           │               ├── ShapePath.java
│   │   │           │               ├── ShapeStroke.java
│   │   │           │               ├── ShapeTrimPath.java
│   │   │           │               ├── SolidLayer.java
│   │   │           │               ├── SplitDimensionPathKeyframeAnimation.java
│   │   │           │               ├── StaticKeyframeAnimation.java
│   │   │           │               ├── StrokeContent.java
│   │   │           │               ├── TransformKeyframeAnimation.java
│   │   │           │               ├── TrimPathContent.java
│   │   │           │               └── Utils.java
│   │   │           └── res/
│   │   │               └── values/
│   │   │                   ├── attrs.xml
│   │   │                   └── ids.xml
│   │   ├── middlewarelibrary/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── middleware/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       ├── middleware/
│   │   │       │   │       │   └── dialog/
│   │   │       │   │       │       ├── Button.java
│   │   │       │   │       │       ├── ButtonFlat.java
│   │   │       │   │       │       ├── CustomView.java
│   │   │       │   │       │       ├── Dialog.java
│   │   │       │   │       │       └── Utils.java
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── middleware/
│   │   │       │   │               ├── ICaculator.java
│   │   │       │   │               ├── ItemDetailActivity.java
│   │   │       │   │               ├── ItemDetailFragment.java
│   │   │       │   │               ├── ItemListActivity.java
│   │   │       │   │               ├── StringUtil.java
│   │   │       │   │               └── dummy/
│   │   │       │   │                   └── DummyContent.java
│   │   │       │   └── res/
│   │   │       │       ├── anim/
│   │   │       │       │   ├── dialog_main_hide_amination.xml
│   │   │       │       │   ├── dialog_main_show_amination.xml
│   │   │       │       │   ├── dialog_root_hide_amin.xml
│   │   │       │       │   └── dialog_root_show_amin.xml
│   │   │       │       ├── drawable/
│   │   │       │       │   └── background_transparent.xml
│   │   │       │       ├── layout/
│   │   │       │       │   ├── activity_item_detail.xml
│   │   │       │       │   ├── activity_item_list.xml
│   │   │       │       │   ├── item_detail.xml
│   │   │       │       │   ├── item_list.xml
│   │   │       │       │   ├── item_list_content.xml
│   │   │       │       │   └── update_dialog.xml
│   │   │       │       ├── layout-w900dp/
│   │   │       │       │   └── item_list.xml
│   │   │       │       └── values/
│   │   │       │           ├── colors.xml
│   │   │       │           ├── dimens.xml
│   │   │       │           ├── strings.xml
│   │   │       │           └── styles.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── middleware/
│   │   │                           └── ExampleUnitTest.java
│   │   ├── publicbundle/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── publicBundle/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── publicBundle/
│   │   │       │   │               └── Tools.java
│   │   │       │   └── res/
│   │   │       │       └── values/
│   │   │       │           └── strings.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── publicBundle/
│   │   │                           └── ExampleUnitTest.java
│   │   ├── remotebundle/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── remotebunle/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── remotebunle/
│   │   │       │   │               └── RemoteBundleActivity.java
│   │   │       │   └── res/
│   │   │       │       ├── layout/
│   │   │       │       │   └── activity_remote_bundle.xml
│   │   │       │       └── values/
│   │   │       │           └── strings.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── remotebunle/
│   │   │                           └── ExampleUnitTest.java
│   │   ├── secondbundle/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── secondbundle/
│   │   │       │   │               ├── MyRichView.java
│   │   │       │   │               ├── PlusOneFragment.java
│   │   │       │   │               ├── SecondBundleActivity.java
│   │   │       │   │               ├── SecondBundleApplication.java
│   │   │       │   │               ├── SecondBundleFragment.java
│   │   │       │   │               └── SecondBundleIniter.java
│   │   │       │   └── res/
│   │   │       │       ├── layout/
│   │   │       │       │   ├── activity_secondbundle.xml
│   │   │       │       │   ├── fragment_plus_one.xml
│   │   │       │       │   └── test_layout.xml
│   │   │       │       └── values/
│   │   │       │           └── strings.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── secondbundle/
│   │   │                           └── ExampleUnitTest.java
│   │   ├── secondbundlelibrary/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── secondbundlelibrary/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── secondbundlelibrary/
│   │   │       │   │               └── SecondbundleShareActivity.java
│   │   │       │   └── res/
│   │   │       │       ├── layout/
│   │   │       │       │   └── activity_secondbundle_share.xml
│   │   │       │       └── values/
│   │   │       │           └── strings.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── secondbundlelibrary/
│   │   │                           └── ExampleUnitTest.java
│   │   ├── settings.gradle
│   │   ├── splashscreen/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   ├── proguard-rules.pro
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── taobao/
│   │   │       │               └── splashscreen/
│   │   │       │                   └── ExampleInstrumentedTest.java
│   │   │       ├── main/
│   │   │       │   ├── AndroidManifest.xml
│   │   │       │   ├── assets/
│   │   │       │   │   ├── A.json
│   │   │       │   │   ├── L.json
│   │   │       │   │   ├── S.json
│   │   │       │   │   └── T.json
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       ├── airbnb/
│   │   │       │   │       │   └── lottiesplash/
│   │   │       │   │       │       └── LottieFontViewGroup.java
│   │   │       │   │       └── taobao/
│   │   │       │   │           └── splashscreen/
│   │   │       │   │               └── WelcomeActivity.java
│   │   │       │   └── res/
│   │   │       │       ├── layout/
│   │   │       │       │   └── activity_welcome.xml
│   │   │       │       └── values/
│   │   │       │           ├── attrs.xml
│   │   │       │           ├── colors.xml
│   │   │       │           ├── strings.xml
│   │   │       │           └── styles.xml
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── taobao/
│   │   │                       └── splashscreen/
│   │   │                           └── ExampleUnitTest.java
│   │   └── structor.md
│   ├── IncrementAtlasDemo/
│   │   ├── .gitignore
│   │   ├── build.gradle
│   │   ├── gradle/
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   ├── gradle.properties
│   │   ├── gradlew
│   │   ├── gradlew.bat
│   │   ├── increment_app/
│   │   │   ├── build.gradle
│   │   │   └── src/
│   │   │       └── main/
│   │   │           └── AndroidManifest.xml
│   │   └── settings.gradle
│   ├── MyApplication/
│   │   ├── gradle/
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   └── gradlew
│   ├── README.md
│   ├── multi-feature-module/
│   │   ├── .google/
│   │   │   └── packaging.yaml
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── README.md
│   │   ├── base/
│   │   │   ├── build.gradle
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── example/
│   │   │           │           └── android/
│   │   │           │               └── unsplash/
│   │   │           │                   ├── IntentUtil.kt
│   │   │           │                   ├── data/
│   │   │           │                   │   ├── PhotoService.java
│   │   │           │                   │   ├── UnsplashService.java
│   │   │           │                   │   └── model/
│   │   │           │                   │       └── Photo.java
│   │   │           │                   ├── test.kt
│   │   │           │                   ├── transition/
│   │   │           │                   │   └── TextResize.java
│   │   │           │                   └── ui/
│   │   │           │                       ├── DetailSharedElementEnterCallback.java
│   │   │           │                       ├── ForegroundImageView.java
│   │   │           │                       ├── ImageSize.java
│   │   │           │                       ├── ThreeTwoImageView.java
│   │   │           │                       ├── TransitionCallback.java
│   │   │           │                       ├── grid/
│   │   │           │                       │   ├── GridMarginDecoration.java
│   │   │           │                       │   ├── OnItemSelectedListener.java
│   │   │           │                       │   ├── PhotoAdapter.java
│   │   │           │                       │   └── PhotoViewHolder.java
│   │   │           │                       └── pager/
│   │   │           │                           └── DetailViewPagerAdapter.java
│   │   │           └── res/
│   │   │               ├── animator/
│   │   │               │   └── raise.xml
│   │   │               ├── drawable/
│   │   │               │   ├── grey_ripple.xml
│   │   │               │   └── ic_arrow_back.xml
│   │   │               ├── layout/
│   │   │               │   ├── detail_view.xml
│   │   │               │   └── photo_item.xml
│   │   │               ├── transition/
│   │   │               │   ├── grid_exit.xml
│   │   │               │   ├── grid_reenter.xml
│   │   │               │   └── shared_main_detail.xml
│   │   │               └── values/
│   │   │                   ├── attrs_foreground_view.xml
│   │   │                   ├── colors.xml
│   │   │                   ├── dimens.xml
│   │   │                   ├── ids.xml
│   │   │                   ├── strings.xml
│   │   │                   └── styles.xml
│   │   ├── build.gradle
│   │   ├── detail/
│   │   │   ├── build.gradle
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── example/
│   │   │       │               └── android/
│   │   │       │                   └── unsplash/
│   │   │       │                       └── DetailActivityTest.java
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── example/
│   │   │           │           └── android/
│   │   │           │               └── unsplash/
│   │   │           │                   └── DetailActivity.java
│   │   │           └── res/
│   │   │               ├── drawable/
│   │   │               │   └── page_margin.xml
│   │   │               └── layout/
│   │   │                   └── activity_detail.xml
│   │   ├── gradle/
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   ├── gradle.properties
│   │   ├── gradlew
│   │   ├── installed/
│   │   │   ├── .gitignore
│   │   │   ├── build.gradle
│   │   │   └── src/
│   │   │       └── main/
│   │   │           └── AndroidManifest.xml
│   │   ├── instant/
│   │   │   └── build.gradle
│   │   ├── main/
│   │   │   ├── build.gradle
│   │   │   └── src/
│   │   │       ├── androidTest/
│   │   │       │   └── java/
│   │   │       │       └── com/
│   │   │       │           └── example/
│   │   │       │               └── android/
│   │   │       │                   └── unsplash/
│   │   │       │                       └── MainActivityTest.java
│   │   │       └── main/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── example/
│   │   │           │           └── android/
│   │   │           │               └── unsplash/
│   │   │           │                   └── MainActivity.java
│   │   │           └── res/
│   │   │               └── layout/
│   │   │                   └── activity_main.xml
│   │   ├── proguard.pro
│   │   └── settings.gradle
│   └── 基于版本打包的demo/
│       ├── FirstBundle/
│       │   ├── build.gradle
│       │   ├── gradle/
│       │   │   └── wrapper/
│       │   │       ├── gradle-wrapper.jar
│       │   │       └── gradle-wrapper.properties
│       │   ├── gradlew
│       │   ├── gradlew.bat
│       │   └── src/
│       │       └── main/
│       │           ├── AndroidManifest.xml
│       │           ├── java/
│       │           │   └── com/
│       │           │       └── taobao/
│       │           │           └── firstbundle/
│       │           │               ├── FirstBundleActivity.java
│       │           │               └── FirstBundleApplication.java
│       │           └── res/
│       │               ├── layout/
│       │               │   └── first_main.xml
│       │               └── values/
│       │                   └── strings.xml
│       ├── README.md
│       ├── README.zh_cn.md
│       ├── app/
│       │   ├── activitygroupdelegate/
│       │   │   ├── .gitignore
│       │   │   ├── build.gradle
│       │   │   ├── proguard-rules.pro
│       │   │   └── src/
│       │   │       ├── androidTest/
│       │   │       │   └── java/
│       │   │       │       └── com/
│       │   │       │           └── taoboa/
│       │   │       │               └── activitygroupdelegate/
│       │   │       │                   └── ExampleInstrumentedTest.java
│       │   │       ├── main/
│       │   │       │   ├── AndroidManifest.xml
│       │   │       │   └── res/
│       │   │       │       └── values/
│       │   │       │           └── strings.xml
│       │   │       └── test/
│       │   │           └── java/
│       │   │               └── com/
│       │   │                   └── taoboa/
│       │   │                       └── activitygroupdelegate/
│       │   │                           └── ExampleUnitTest.java
│       │   ├── build.gradle
│       │   ├── buildApk.sh
│       │   ├── buildTpatch.sh
│       │   ├── firstbundle/
│       │   │   ├── .gitignore
│       │   │   ├── build.gradle
│       │   │   ├── proguard-rules.pro
│       │   │   └── src/
│       │   │       ├── androidTest/
│       │   │       │   └── java/
│       │   │       │       └── com/
│       │   │       │           └── taobao/
│       │   │       │               └── firstbundle/
│       │   │       │                   └── ExampleInstrumentedTest.java
│       │   │       ├── main/
│       │   │       │   ├── AndroidManifest.xml
│       │   │       │   ├── java/
│       │   │       │   │   └── com/
│       │   │       │   │       └── taobao/
│       │   │       │   │           └── firstbundle/
│       │   │       │   │               └── MainActivity.java
│       │   │       │   └── res/
│       │   │       │       ├── drawable/
│       │   │       │       │   ├── ic_dashboard_black_24dp.xml
│       │   │       │       │   ├── ic_home_black_24dp.xml
│       │   │       │       │   └── ic_notifications_black_24dp.xml
│       │   │       │       ├── layout/
│       │   │       │       │   └── activity_main.xml
│       │   │       │       ├── menu/
│       │   │       │       │   └── navigation.xml
│       │   │       │       └── values/
│       │   │       │           ├── colors.xml
│       │   │       │           ├── dimens.xml
│       │   │       │           ├── strings.xml
│       │   │       │           └── styles.xml
│       │   │       └── test/
│       │   │           └── java/
│       │   │               └── com/
│       │   │                   └── taobao/
│       │   │                       └── firstbundle/
│       │   │                           └── ExampleUnitTest.java
│       │   ├── gradle/
│       │   │   └── wrapper/
│       │   │       ├── gradle-wrapper.jar
│       │   │       └── gradle-wrapper.properties
│       │   ├── gradle.properties
│       │   ├── gradlew
│       │   ├── gradlew.bat
│       │   ├── proguard.cfg
│       │   ├── secondbundle/
│       │   │   ├── .gitignore
│       │   │   ├── build.gradle
│       │   │   ├── proguard-rules.pro
│       │   │   └── src/
│       │   │       ├── androidTest/
│       │   │       │   └── java/
│       │   │       │       └── com/
│       │   │       │           └── taobao/
│       │   │       │               └── secondbundle/
│       │   │       │                   └── ExampleInstrumentedTest.java
│       │   │       ├── main/
│       │   │       │   ├── AndroidManifest.xml
│       │   │       │   ├── java/
│       │   │       │   │   └── com/
│       │   │       │   │       └── taobao/
│       │   │       │   │           └── secondbundle/
│       │   │       │   │               └── LoginActivity.java
│       │   │       │   └── res/
│       │   │       │       ├── layout/
│       │   │       │       │   └── activity_login.xml
│       │   │       │       └── values/
│       │   │       │           ├── colors.xml
│       │   │       │           ├── dimens.xml
│       │   │       │           ├── strings.xml
│       │   │       │           └── styles.xml
│       │   │       └── test/
│       │   │           └── java/
│       │   │               └── com/
│       │   │                   └── taobao/
│       │   │                       └── secondbundle/
│       │   │                           └── ExampleUnitTest.java
│       │   ├── settings.gradle
│       │   ├── sharebundle/
│       │   │   ├── .gitignore
│       │   │   ├── build.gradle
│       │   │   ├── proguard-rules.pro
│       │   │   └── src/
│       │   │       ├── androidTest/
│       │   │       │   └── java/
│       │   │       │       └── com/
│       │   │       │           └── taobao/
│       │   │       │               └── sharebundle/
│       │   │       │                   └── ExampleInstrumentedTest.java
│       │   │       ├── main/
│       │   │       │   ├── AndroidManifest.xml
│       │   │       │   └── res/
│       │   │       │       └── values/
│       │   │       │           └── strings.xml
│       │   │       └── test/
│       │   │           └── java/
│       │   │               └── com/
│       │   │                   └── taobao/
│       │   │                       └── sharebundle/
│       │   │                           └── ExampleUnitTest.java
│       │   ├── sharedlibrary/
│       │   │   ├── .gitignore
│       │   │   ├── build.gradle
│       │   │   ├── proguard-rules.pro
│       │   │   └── src/
│       │   │       ├── androidTest/
│       │   │       │   └── java/
│       │   │       │       └── taobao/
│       │   │       │           └── sharedlibrary/
│       │   │       │               └── ExampleInstrumentedTest.java
│       │   │       ├── main/
│       │   │       │   ├── AndroidManifest.xml
│       │   │       │   └── res/
│       │   │       │       └── values/
│       │   │       │           └── strings.xml
│       │   │       └── test/
│       │   │           └── java/
│       │   │               └── taobao/
│       │   │                   └── sharedlibrary/
│       │   │                       └── ExampleUnitTest.java
│       │   └── src/
│       │       └── main/
│       │           ├── AndroidManifest.xml
│       │           ├── java/
│       │           │   └── com/
│       │           │       └── taobao/
│       │           │           └── demo/
│       │           │               ├── DemoApplication.java
│       │           │               ├── WelcomActivity.java
│       │           │               └── update/
│       │           │                   └── Updater.java
│       │           └── res/
│       │               ├── layout/
│       │               │   └── main.xml
│       │               └── values/
│       │                   ├── colors.xml
│       │                   ├── strings.xml
│       │                   └── styles.xml
│       ├── build.gradle
│       ├── gradle/
│       │   └── wrapper/
│       │       ├── gradle-wrapper.jar
│       │       └── gradle-wrapper.properties
│       ├── gradlew
│       ├── gradlew.bat
│       └── settings.gradle
├── atlas-docs/
│   ├── .gitignore
│   ├── .si.yml
│   ├── README.md
│   ├── SUMMARY.md
│   ├── _book/
│   │   ├── .gitignore
│   │   ├── .si.yml
│   │   ├── code_read/
│   │   │   ├── atlas_bundle_load/
│   │   │   │   ├── atlas_bundle_load.html
│   │   │   │   ├── bundle_load.uml
│   │   │   │   └── bundle_load_part_2.uml
│   │   │   ├── atlas_gradle_apk/
│   │   │   │   └── atlas_atlas_gradle_apk.html
│   │   │   └── atlas_start/
│   │   │       ├── atlas_core_start.uml
│   │   │       ├── atlas_core_start_callback.uml
│   │   │       ├── atlas_core_start_provider.uml
│   │   │       ├── atlas_java_startup.uml
│   │   │       ├── atlas_start_1.html
│   │   │       └── atlas_start_2.html
│   │   ├── faq/
│   │   │   ├── dynamic_failed_help.html
│   │   │   ├── help.html
│   │   │   ├── question.html
│   │   │   └── variant.html
│   │   ├── gitbook/
│   │   │   ├── fonts/
│   │   │   │   └── fontawesome/
│   │   │   │       └── FontAwesome.otf
│   │   │   ├── gitbook-plugin-fontsettings/
│   │   │   │   ├── fontsettings.js
│   │   │   │   └── website.css
│   │   │   ├── gitbook-plugin-highlight/
│   │   │   │   ├── ebook.css
│   │   │   │   └── website.css
│   │   │   ├── gitbook-plugin-livereload/
│   │   │   │   └── plugin.js
│   │   │   ├── gitbook-plugin-lunr/
│   │   │   │   └── search-lunr.js
│   │   │   ├── gitbook-plugin-search/
│   │   │   │   ├── search-engine.js
│   │   │   │   ├── search.css
│   │   │   │   └── search.js
│   │   │   ├── gitbook-plugin-sharing/
│   │   │   │   └── buttons.js
│   │   │   ├── gitbook.js
│   │   │   ├── style.css
│   │   │   └── theme.js
│   │   ├── guide-for-use/
│   │   │   ├── bundleCommunicate.html
│   │   │   ├── guide_for_build.html
│   │   │   ├── guide_for_bundle.html
│   │   │   ├── guide_for_compile.html
│   │   │   └── index.html
│   │   ├── index.html
│   │   ├── principle-intro/
│   │   │   ├── Apk_architecture.html
│   │   │   ├── File_architecture_runtime.html
│   │   │   ├── Project_architectured.html
│   │   │   └── Runtime_principle.html
│   │   ├── search_index.json
│   │   └── update/
│   │       ├── dexpatch.html
│   │       ├── dexpatch_use_guide.html
│   │       ├── guide.html
│   │       ├── index.html
│   │       └── principle.html
│   ├── code_read/
│   │   ├── atlas_bundle_load/
│   │   │   ├── atlas_bundle_load.md
│   │   │   ├── bundle_load.uml
│   │   │   └── bundle_load_part_2.uml
│   │   ├── atlas_gradle_apk/
│   │   │   └── atlas_atlas_gradle_apk.md
│   │   └── atlas_start/
│   │       ├── atlas_core_start.uml
│   │       ├── atlas_core_start_callback.uml
│   │       ├── atlas_core_start_provider.uml
│   │       ├── atlas_java_startup.uml
│   │       ├── atlas_start_1.md
│   │       └── atlas_start_2.md
│   ├── faq/
│   │   ├── dynamic_failed_help.md
│   │   ├── help.md
│   │   ├── question.md
│   │   └── variant.md
│   ├── guide-for-use/
│   │   ├── README.md
│   │   ├── _book/
│   │   │   ├── bundleCommunicate.md
│   │   │   ├── gitbook/
│   │   │   │   ├── fonts/
│   │   │   │   │   └── fontawesome/
│   │   │   │   │       └── FontAwesome.otf
│   │   │   │   ├── gitbook-plugin-fontsettings/
│   │   │   │   │   ├── fontsettings.js
│   │   │   │   │   └── website.css
│   │   │   │   ├── gitbook-plugin-highlight/
│   │   │   │   │   ├── ebook.css
│   │   │   │   │   └── website.css
│   │   │   │   ├── gitbook-plugin-livereload/
│   │   │   │   │   └── plugin.js
│   │   │   │   ├── gitbook-plugin-lunr/
│   │   │   │   │   └── search-lunr.js
│   │   │   │   ├── gitbook-plugin-search/
│   │   │   │   │   ├── search-engine.js
│   │   │   │   │   ├── search.css
│   │   │   │   │   └── search.js
│   │   │   │   ├── gitbook-plugin-sharing/
│   │   │   │   │   └── buttons.js
│   │   │   │   ├── gitbook.js
│   │   │   │   ├── style.css
│   │   │   │   └── theme.js
│   │   │   ├── guide_for_build.md
│   │   │   ├── guide_for_bundle.md
│   │   │   ├── guide_for_compile.md
│   │   │   ├── index.html
│   │   │   └── search_index.json
│   │   ├── bundleCommunicate.md
│   │   ├── guide_for_build.md
│   │   ├── guide_for_bundle.md
│   │   ├── guide_for_compile.md
│   │   └── guide_for_progurad.md
│   ├── principle-intro/
│   │   ├── Apk_architecture.md
│   │   ├── File_architecture_runtime.md
│   │   ├── Project_architectured.md
│   │   └── Runtime_principle.md
│   └── update/
│       ├── README.md
│       ├── dexpatch.md
│       ├── dexpatch_use_guide.md
│       ├── guide.md
│       └── principle.md
├── atlas-gradle-plugin/
│   ├── README.md
│   ├── aapt/
│   │   ├── build.gradle
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── taobao/
│   │           │           └── android/
│   │           │               └── AaptLib.java
│   │           └── resources/
│   │               └── aapt/
│   │                   ├── linux/
│   │                   │   └── aapt
│   │                   └── mac/
│   │                       └── aapt
│   ├── atlas-plugin/
│   │   ├── .gradletasknamecache
│   │   ├── build/
│   │   │   └── resources/
│   │   │       └── main/
│   │   │           └── META-INF/
│   │   │               └── gradle-plugins/
│   │   │                   ├── com.taobao.atlas.feature.properties
│   │   │                   └── com.taobao.atlas.instantapp.properties
│   │   ├── build.gradle
│   │   ├── increment.sh
│   │   ├── libs/
│   │   │   └── libarsc.jar
│   │   ├── publish.sh
│   │   ├── src/
│   │   │   ├── main/
│   │   │   │   ├── java/
│   │   │   │   │   ├── android/
│   │   │   │   │   │   └── aapt/
│   │   │   │   │   │       └── pb/
│   │   │   │   │   │           └── internal/
│   │   │   │   │   │               └── ResourcesInternal.java
│   │   │   │   │   ├── com/
│   │   │   │   │   │   ├── android/
│   │   │   │   │   │   │   ├── aapt/
│   │   │   │   │   │   │   │   └── Resources.java
│   │   │   │   │   │   │   ├── build/
│   │   │   │   │   │   │   │   └── gradle/
│   │   │   │   │   │   │   │       ├── internal/
│   │   │   │   │   │   │   │       │   ├── AndroidComponent.java
│   │   │   │   │   │   │   │       │   ├── ApkDataUtils.java
│   │   │   │   │   │   │   │       │   ├── AtlasDependencyManager.java
│   │   │   │   │   │   │   │       │   ├── AtlasDependencyManager2.java
│   │   │   │   │   │   │   │       │   ├── api/
│   │   │   │   │   │   │   │       │   │   ├── ApContext.java
│   │   │   │   │   │   │   │       │   │   ├── ApkFiles.java
│   │   │   │   │   │   │   │       │   │   ├── AppVariantContext.java
│   │   │   │   │   │   │   │       │   │   ├── AppVariantOutputContext.java
│   │   │   │   │   │   │   │       │   │   ├── AwbTransform.java
│   │   │   │   │   │   │   │       │   │   ├── FeatureVariantContext.java
│   │   │   │   │   │   │   │       │   │   ├── LibVariantContext.java
│   │   │   │   │   │   │   │       │   │   └── VariantContext.java
│   │   │   │   │   │   │   │       │   ├── ide/
│   │   │   │   │   │   │   │       │   │   ├── AtlasAndroidLibraryImpl.java
│   │   │   │   │   │   │   │       │   │   ├── AtlasDependencyGraph.java
│   │   │   │   │   │   │   │       │   │   └── DependencyConvertUtils.java
│   │   │   │   │   │   │   │       │   ├── incremental/
│   │   │   │   │   │   │   │       │   │   ├── TBConstructorRedirection.java
│   │   │   │   │   │   │   │       │   │   ├── TBIncrementalChangeVisitor.java
│   │   │   │   │   │   │   │       │   │   ├── TBIncrementalSupportVisitor.java
│   │   │   │   │   │   │   │       │   │   ├── TBIncrementalVisitor.java
│   │   │   │   │   │   │   │       │   │   └── TBMethodRedirection.java
│   │   │   │   │   │   │   │       │   ├── pipeline/
│   │   │   │   │   │   │   │       │   │   ├── AtlasExtendedContentType.java
│   │   │   │   │   │   │   │       │   │   ├── AtlasIncrementalFileMergeTransformUtils.java
│   │   │   │   │   │   │   │       │   │   ├── AtlasIntermediateFolderUtils.java
│   │   │   │   │   │   │   │       │   │   ├── AtlasIntermediateStreamHelper.java
│   │   │   │   │   │   │   │       │   │   ├── InjectTransform.java
│   │   │   │   │   │   │   │       │   │   └── InjectTransformManager.java
│   │   │   │   │   │   │   │       │   ├── publishing/
│   │   │   │   │   │   │   │       │   │   └── AtlasAndroidArtifacts.java
│   │   │   │   │   │   │   │       │   ├── scope/
│   │   │   │   │   │   │   │       │   │   └── ConventionMappingHelper.java
│   │   │   │   │   │   │   │       │   └── transforms/
│   │   │   │   │   │   │   │       │       ├── ApTransform.java
│   │   │   │   │   │   │   │       │       ├── ExtractApTransform.java
│   │   │   │   │   │   │   │       │       ├── ExtractAwbTransform.java
│   │   │   │   │   │   │   │       │       ├── ExtractSolibTransform.java
│   │   │   │   │   │   │   │       │       ├── LoadSolibFromLibsTransform.java
│   │   │   │   │   │   │   │       │       └── LoadSolibTransform.java
│   │   │   │   │   │   │   │       └── tasks/
│   │   │   │   │   │   │   │           ├── PackageAwb.java
│   │   │   │   │   │   │   │           └── factory/
│   │   │   │   │   │   │   │               └── AwbAndroidJavaCompile.java
│   │   │   │   │   │   │   ├── builder/
│   │   │   │   │   │   │   │   └── core/
│   │   │   │   │   │   │   │       ├── AtlasAapt.java
│   │   │   │   │   │   │   │       └── AtlasBuilder.java
│   │   │   │   │   │   │   ├── ide/
│   │   │   │   │   │   │   │   └── common/
│   │   │   │   │   │   │   │       └── process/
│   │   │   │   │   │   │   │           ├── CmdExecutor.java
│   │   │   │   │   │   │   │           ├── MtlProcessExecutor.java
│   │   │   │   │   │   │   │           ├── MtlProcessInfo.java
│   │   │   │   │   │   │   │           └── MtlProcessInfoBuilder.java
│   │   │   │   │   │   │   └── tools/
│   │   │   │   │   │   │       └── r8/
│   │   │   │   │   │   │           ├── AtlasD8.java
│   │   │   │   │   │   │           ├── AtlasD8DexArchiveBuilder.java
│   │   │   │   │   │   │           ├── AtlasD8Merger.java
│   │   │   │   │   │   │           └── dex/
│   │   │   │   │   │   │               ├── AtlasApplicationWriter.java
│   │   │   │   │   │   │               └── AtlasVirtualFile.java
│   │   │   │   │   │   └── taobao/
│   │   │   │   │   │       └── android/
│   │   │   │   │   │           └── builder/
│   │   │   │   │   │               ├── AtlasAppPlugin.java
│   │   │   │   │   │               ├── AtlasBasePlugin.java
│   │   │   │   │   │               ├── AtlasBuildContext.java
│   │   │   │   │   │               ├── AtlasFeaturePlugin.java
│   │   │   │   │   │               ├── AtlasInstantAppPlugin.java
│   │   │   │   │   │               ├── AtlasLibPlugin.java
│   │   │   │   │   │               ├── AtlasMainDexHelper.java
│   │   │   │   │   │               ├── AtlasPlugin.java
│   │   │   │   │   │               ├── adapter/
│   │   │   │   │   │               │   ├── AppVariantContextFactory.java
│   │   │   │   │   │               │   ├── AtlasExtensionFactory.java
│   │   │   │   │   │               │   └── BuilderAdapter.java
│   │   │   │   │   │               ├── dependency/
│   │   │   │   │   │               │   ├── AtlasDependencyTree.java
│   │   │   │   │   │               │   ├── AtlasProjectDependencyManager.java
│   │   │   │   │   │               │   ├── ap/
│   │   │   │   │   │               │   │   └── ApDependency.java
│   │   │   │   │   │               │   ├── diff/
│   │   │   │   │   │               │   │   ├── DependencyCompareUtils.java
│   │   │   │   │   │               │   │   └── DependencyDiff.java
│   │   │   │   │   │               │   ├── model/
│   │   │   │   │   │               │   │   ├── ApLibrary.java
│   │   │   │   │   │               │   │   ├── ApkLibrary.java
│   │   │   │   │   │               │   │   ├── AwbBundle.java
│   │   │   │   │   │               │   │   └── SoLibrary.java
│   │   │   │   │   │               │   ├── output/
│   │   │   │   │   │               │   │   └── DependencyJson.java
│   │   │   │   │   │               │   └── parser/
│   │   │   │   │   │               │       ├── AtlasDepHelper.java
│   │   │   │   │   │               │       ├── AtlasDepTreeParser.java
│   │   │   │   │   │               │       ├── CircleDependencyCheck.java
│   │   │   │   │   │               │       ├── DependencyLocationManager.java
│   │   │   │   │   │               │       ├── ResolvedDependencyInfo.java
│   │   │   │   │   │               │       └── helper/
│   │   │   │   │   │               │           ├── DependencyGroup.java
│   │   │   │   │   │               │           └── DependencyResolver.java
│   │   │   │   │   │               ├── extension/
│   │   │   │   │   │               │   ├── AtlasExtension.java
│   │   │   │   │   │               │   ├── BundleConfig.java
│   │   │   │   │   │               │   ├── DefaultChannelConfig.java
│   │   │   │   │   │               │   ├── DexConfig.java
│   │   │   │   │   │               │   ├── EnhanceConfig.java
│   │   │   │   │   │               │   ├── ManifestOptions.java
│   │   │   │   │   │               │   ├── MultiDexConfig.java
│   │   │   │   │   │               │   ├── PatchConfig.java
│   │   │   │   │   │               │   ├── TBuildConfig.java
│   │   │   │   │   │               │   ├── TBuildType.java
│   │   │   │   │   │               │   ├── annotation/
│   │   │   │   │   │               │   │   ├── Config.java
│   │   │   │   │   │               │   │   └── ConfigGroup.java
│   │   │   │   │   │               │   └── factory/
│   │   │   │   │   │               │       ├── DefaultChannelConfigFactory.java
│   │   │   │   │   │               │       ├── DexConfigFactory.java
│   │   │   │   │   │               │       ├── EnhanceConfigFactory.java
│   │   │   │   │   │               │       ├── MultiDexConfigFactory.java
│   │   │   │   │   │               │       ├── PatchConfigFactory.java
│   │   │   │   │   │               │       └── TBuildTypeFactory.java
│   │   │   │   │   │               ├── hook/
│   │   │   │   │   │               │   ├── AppPluginHook.java
│   │   │   │   │   │               │   └── dex/
│   │   │   │   │   │               │       ├── AtlasD8Creator.java
│   │   │   │   │   │               │       ├── AtlasDexArchiveMerger.java
│   │   │   │   │   │               │       ├── DexArchiveMergerHook.java
│   │   │   │   │   │               │       ├── DexByteCodeConverterHook.java
│   │   │   │   │   │               │       ├── DexWrapperHook.java
│   │   │   │   │   │               │       ├── DirDexArchiveHook.java
│   │   │   │   │   │               │       └── NonIncrementalJarDexArchiveHook.java
│   │   │   │   │   │               ├── insant/
│   │   │   │   │   │               │   ├── DelegateProguardTransform.java
│   │   │   │   │   │               │   ├── InstantInfo.java
│   │   │   │   │   │               │   ├── TaobaoExtractJarsTransform.java
│   │   │   │   │   │               │   ├── TaobaoInstantRunDependenciesApkBuilder.java
│   │   │   │   │   │               │   ├── TaobaoInstantRunDex.java
│   │   │   │   │   │               │   ├── TaobaoInstantRunSlicer.java
│   │   │   │   │   │               │   ├── TaobaoInstantRunTransform.java
│   │   │   │   │   │               │   ├── matcher/
│   │   │   │   │   │               │   │   ├── AllMatcher.java
│   │   │   │   │   │               │   │   ├── ClassMatcher.java
│   │   │   │   │   │               │   │   ├── ExcludeMatcher.java
│   │   │   │   │   │               │   │   ├── Imatcher.java
│   │   │   │   │   │               │   │   ├── ImplementsMatcher.java
│   │   │   │   │   │               │   │   ├── MatcherCreator.java
│   │   │   │   │   │               │   │   ├── NoMatcher.java
│   │   │   │   │   │               │   │   ├── PackageMatcher.java
│   │   │   │   │   │               │   │   ├── SeveralExcludeMatcher.java
│   │   │   │   │   │               │   │   └── SubPackgeMatcher.java
│   │   │   │   │   │               │   └── visitor/
│   │   │   │   │   │               │       ├── ModifyClassVisitor.java
│   │   │   │   │   │               │       ├── ModifyFieldVisitor.java
│   │   │   │   │   │               │       └── ModifyMethodVisitor.java
│   │   │   │   │   │               ├── manager/
│   │   │   │   │   │               │   ├── AtlasAppTaskManager.java
│   │   │   │   │   │               │   ├── AtlasBaseTaskManager.java
│   │   │   │   │   │               │   ├── AtlasConfigurationHelper.java
│   │   │   │   │   │               │   ├── AtlasFeatureTaskManager.java
│   │   │   │   │   │               │   ├── AtlasLibTaskManager.java
│   │   │   │   │   │               │   ├── PluginManager.java
│   │   │   │   │   │               │   └── Version.java
│   │   │   │   │   │               ├── tasks/
│   │   │   │   │   │               │   ├── PrepareAPTask.java
│   │   │   │   │   │               │   ├── app/
│   │   │   │   │   │               │   │   ├── ApBuildTask.java
│   │   │   │   │   │               │   │   ├── BuildAtlasEnvTask.java
│   │   │   │   │   │               │   │   ├── GenerateAtlasSourceTask.java
│   │   │   │   │   │               │   │   ├── LogDependenciesTask.java
│   │   │   │   │   │               │   │   ├── ResourcePatch.java
│   │   │   │   │   │               │   │   ├── ScanDupResTask.java
│   │   │   │   │   │               │   │   ├── bundle/
│   │   │   │   │   │               │   │   │   ├── AtlasSymbolIo.java
│   │   │   │   │   │               │   │   │   ├── AwbApkPackageTask.java
│   │   │   │   │   │               │   │   │   ├── AwbJavaCompileConfigAction.java
│   │   │   │   │   │               │   │   │   ├── AwbPackagingScope.java
│   │   │   │   │   │               │   │   │   ├── Dex.java
│   │   │   │   │   │               │   │   │   ├── JavacAwbsTask.java
│   │   │   │   │   │               │   │   │   ├── PackageAwbsTask.java
│   │   │   │   │   │               │   │   │   ├── ProcessAwbAndroidResources.java
│   │   │   │   │   │               │   │   │   ├── ProcessResAwbsTask.java
│   │   │   │   │   │               │   │   │   └── actions/
│   │   │   │   │   │               │   │   │       ├── FirstApkAction.java
│   │   │   │   │   │               │   │   │       ├── LastApkAction.java
│   │   │   │   │   │               │   │   │       └── LastBundleAction.java
│   │   │   │   │   │               │   │   ├── databinding/
│   │   │   │   │   │               │   │   │   ├── AwbDataBindingExportBuildInfoTask.java
│   │   │   │   │   │               │   │   │   ├── AwbDataBindingMergeArtifactsTask.java
│   │   │   │   │   │               │   │   │   ├── AwbDataBindingProcessLayoutTask.java
│   │   │   │   │   │               │   │   │   ├── AwbDataBindingRenameTask.java
│   │   │   │   │   │               │   │   │   └── AwbXmlProcessor.java
│   │   │   │   │   │               │   │   ├── manifest/
│   │   │   │   │   │               │   │   │   ├── PostProcessManifestAction.java
│   │   │   │   │   │               │   │   │   ├── PreProcessManifestAction.java
│   │   │   │   │   │               │   │   │   └── StandardizeLibManifestTask.java
│   │   │   │   │   │               │   │   ├── merge/
│   │   │   │   │   │               │   │   │   ├── AppendMainArtifactsCollection.java
│   │   │   │   │   │               │   │   │   ├── MainArtifactsCollection.java
│   │   │   │   │   │               │   │   │   ├── MainFilesCollection.java
│   │   │   │   │   │               │   │   │   ├── MergeAssetAwbsConfigAction.java
│   │   │   │   │   │               │   │   │   ├── MergeAwbsJniFolder.java
│   │   │   │   │   │               │   │   │   ├── MergeManifestAwbsConfigAction.java
│   │   │   │   │   │               │   │   │   ├── MergeResAwbsConfigAction.java
│   │   │   │   │   │               │   │   │   ├── MergeResV4Dir.java
│   │   │   │   │   │               │   │   │   ├── MergeSoLibTask.java
│   │   │   │   │   │               │   │   │   └── bundle/
│   │   │   │   │   │               │   │   │       ├── AwbDataBindingProcessLayoutsTask.java
│   │   │   │   │   │               │   │   │       ├── MergeAwbAssets.java
│   │   │   │   │   │               │   │   │       └── MergeAwbResource.java
│   │   │   │   │   │               │   │   └── prepare/
│   │   │   │   │   │               │   │       ├── AddLocalJarTask.java
│   │   │   │   │   │               │   │       ├── BundleInfoSourceCreator.java
│   │   │   │   │   │               │   │       ├── PrepareAaptTask.java
│   │   │   │   │   │               │   │       ├── PrepareBundleInfoTask.java
│   │   │   │   │   │               │   │       └── PreparePackageIdsTask.java
│   │   │   │   │   │               │   ├── awo/
│   │   │   │   │   │               │   │   └── utils/
│   │   │   │   │   │               │   │       └── AwoInstaller.java
│   │   │   │   │   │               │   ├── execution/
│   │   │   │   │   │               │   │   └── SkipExecuter.java
│   │   │   │   │   │               │   ├── feature/
│   │   │   │   │   │               │   │   ├── FeatureLibManifestTask.java
│   │   │   │   │   │               │   │   └── PrePareFeatureTask.java
│   │   │   │   │   │               │   ├── helper/
│   │   │   │   │   │               │   │   └── AtlasListTask.java
│   │   │   │   │   │               │   ├── instantapp/
│   │   │   │   │   │               │   │   └── AtlasBundleInstantApp.java
│   │   │   │   │   │               │   ├── library/
│   │   │   │   │   │               │   │   ├── AndroidComponetCreator.java
│   │   │   │   │   │               │   │   ├── AwbGenerator.java
│   │   │   │   │   │               │   │   ├── JarExtractTask.java
│   │   │   │   │   │               │   │   ├── ModuleInfoWriter.java
│   │   │   │   │   │               │   │   └── publish/
│   │   │   │   │   │               │   │       ├── PublishHooker.java
│   │   │   │   │   │               │   │       └── UpdatePomTask.java
│   │   │   │   │   │               │   ├── manager/
│   │   │   │   │   │               │   │   ├── AbstractBundleTask.java
│   │   │   │   │   │               │   │   ├── MtlBaseTaskAction.java
│   │   │   │   │   │               │   │   ├── MtlParallelTask.java
│   │   │   │   │   │               │   │   ├── MtlTaskContext.java
│   │   │   │   │   │               │   │   ├── MtlTaskFactory.java
│   │   │   │   │   │               │   │   ├── MtlTaskFactoryImpl.java
│   │   │   │   │   │               │   │   ├── MtlTaskInjector.java
│   │   │   │   │   │               │   │   ├── TaskCreater.java
│   │   │   │   │   │               │   │   ├── TaskQueryHelper.java
│   │   │   │   │   │               │   │   └── transform/
│   │   │   │   │   │               │   │       ├── MtlInjectTransform.java
│   │   │   │   │   │               │   │       ├── MtlTransformContext.java
│   │   │   │   │   │               │   │       ├── MtlTransformInjector.java
│   │   │   │   │   │               │   │       └── TransformManager.java
│   │   │   │   │   │               │   ├── maven/
│   │   │   │   │   │               │   │   └── PublishToMavenRepositoryHook.java
│   │   │   │   │   │               │   ├── tpatch/
│   │   │   │   │   │               │   │   ├── DiffBundleInfoTask.java
│   │   │   │   │   │               │   │   ├── PackageTPatchConfigAction.java
│   │   │   │   │   │               │   │   ├── TPatchDiffApkBuildTask.java
│   │   │   │   │   │               │   │   ├── TPatchDiffResAPBuildTask.java
│   │   │   │   │   │               │   │   └── TPatchTask.java
│   │   │   │   │   │               │   └── transform/
│   │   │   │   │   │               │       ├── AtlasDataBindingMergeArtifactsTransform.java
│   │   │   │   │   │               │       ├── AtlasDesugarTransform.java
│   │   │   │   │   │               │       ├── AtlasFixStackFramesTransform.java
│   │   │   │   │   │               │       ├── AtlasMergeJavaResourcesTransform.java
│   │   │   │   │   │               │       ├── AtlasProguardTransform.java
│   │   │   │   │   │               │       ├── AtlasTransformUtils.java
│   │   │   │   │   │               │       ├── ClassInjectTransform.java
│   │   │   │   │   │               │       ├── ResourcesShrinker.java
│   │   │   │   │   │               │       ├── TransformReplacer.java
│   │   │   │   │   │               │       └── dex/
│   │   │   │   │   │               │           ├── AtlasDexArchiveBuilderCacheHander.java
│   │   │   │   │   │               │           ├── AtlasDexArchiveBuilderTransform.java
│   │   │   │   │   │               │           ├── AtlasDexMerger.java
│   │   │   │   │   │               │           ├── AtlasDexMergerTransform.java
│   │   │   │   │   │               │           ├── AtlasMainDexMerger.java
│   │   │   │   │   │               │           ├── AtlasMultiDexListTransform.java
│   │   │   │   │   │               │           ├── AwbDexsMerger.java
│   │   │   │   │   │               │           └── DexMergeTransformCallable.java
│   │   │   │   │   │               └── tools/
│   │   │   │   │   │                   ├── BuildHelper.java
│   │   │   │   │   │                   ├── EnvHelper.java
│   │   │   │   │   │                   ├── FileNameUtils.java
│   │   │   │   │   │                   ├── JarUtils.java
│   │   │   │   │   │                   ├── MD5Util.java
│   │   │   │   │   │                   ├── OSUtils.java
│   │   │   │   │   │                   ├── PathUtil.java
│   │   │   │   │   │                   ├── PluginTypeUtils.java
│   │   │   │   │   │                   ├── Profiler.java
│   │   │   │   │   │                   ├── ReflectUtils.java
│   │   │   │   │   │                   ├── TransformInputUtils.java
│   │   │   │   │   │                   ├── VersionUtils.java
│   │   │   │   │   │                   ├── asm/
│   │   │   │   │   │                   │   ├── ClassNameRenamer.java
│   │   │   │   │   │                   │   ├── ClazzBasicHandler.java
│   │   │   │   │   │                   │   ├── ClazzReplacer.java
│   │   │   │   │   │                   │   ├── MethodReplacer.java
│   │   │   │   │   │                   │   ├── field/
│   │   │   │   │   │                   │   │   ├── AsmFieldEditor.java
│   │   │   │   │   │                   │   │   ├── Field.java
│   │   │   │   │   │                   │   │   └── ModifyClassVisiter.java
│   │   │   │   │   │                   │   └── method/
│   │   │   │   │   │                   │       ├── Method.java
│   │   │   │   │   │                   │       ├── MethodReplaceClazzVisitor.java
│   │   │   │   │   │                   │       ├── MethodReplaceMethodVisitor.java
│   │   │   │   │   │                   │       └── MethodStore.java
│   │   │   │   │   │                   ├── bundleinfo/
│   │   │   │   │   │                   │   ├── ApkFileListUtils.java
│   │   │   │   │   │                   │   ├── BundleGraphExecutor.java
│   │   │   │   │   │                   │   ├── BundleInfoUtils.java
│   │   │   │   │   │                   │   ├── BundleItem.java
│   │   │   │   │   │                   │   ├── BundleItemRunner.java
│   │   │   │   │   │                   │   ├── DynamicBundleInfo.java
│   │   │   │   │   │                   │   └── model/
│   │   │   │   │   │                   │       ├── BasicBundleInfo.java
│   │   │   │   │   │                   │       └── BundleInfo.java
│   │   │   │   │   │                   ├── cache/
│   │   │   │   │   │                   │   ├── Cache.java
│   │   │   │   │   │                   │   ├── FileCacheCenter.java
│   │   │   │   │   │                   │   ├── FileCacheException.java
│   │   │   │   │   │                   │   ├── FileLockUtils.java
│   │   │   │   │   │                   │   ├── SimpleLocalCache.java
│   │   │   │   │   │                   │   └── SimpleNetworkCache.java
│   │   │   │   │   │                   ├── classinject/
│   │   │   │   │   │                   │   ├── ApkInjectInfoCreator.java
│   │   │   │   │   │                   │   ├── ClazzInjecter.java
│   │   │   │   │   │                   │   ├── CodeInjectByJavassist.java
│   │   │   │   │   │                   │   ├── FrameworkProperties.java
│   │   │   │   │   │                   │   └── InjectParam.java
│   │   │   │   │   │                   ├── command/
│   │   │   │   │   │                   │   ├── CommandExecutor.java
│   │   │   │   │   │                   │   └── ExecutionException.java
│   │   │   │   │   │                   ├── concurrent/
│   │   │   │   │   │                   │   └── ExecutorServicesHelper.java
│   │   │   │   │   │                   ├── diff/
│   │   │   │   │   │                   │   └── DiffResExtractor.java
│   │   │   │   │   │                   ├── groovy/
│   │   │   │   │   │                   │   └── ClosureFactory.java
│   │   │   │   │   │                   ├── guide/
│   │   │   │   │   │                   │   ├── AtlasConfigField.java
│   │   │   │   │   │                   │   ├── AtlasConfigHelper.java
│   │   │   │   │   │                   │   └── AtlasExtensionOutput.java
│   │   │   │   │   │                   ├── ideaplugin/
│   │   │   │   │   │                   │   ├── ApDownloader.java
│   │   │   │   │   │                   │   └── AwoPropHandler.java
│   │   │   │   │   │                   ├── jarmerge/
│   │   │   │   │   │                   │   └── JarMergerWithOverride.java
│   │   │   │   │   │                   ├── log/
│   │   │   │   │   │                   │   ├── FileLogger.java
│   │   │   │   │   │                   │   └── LogOutputListener.java
│   │   │   │   │   │                   ├── manifest/
│   │   │   │   │   │                   │   ├── AtlasProxy.java
│   │   │   │   │   │                   │   ├── ManifestFileUtils.java
│   │   │   │   │   │                   │   ├── ManifestHelper.java
│   │   │   │   │   │                   │   ├── ManifestInfo.java
│   │   │   │   │   │                   │   ├── Permission.java
│   │   │   │   │   │                   │   └── Result.java
│   │   │   │   │   │                   ├── multidex/
│   │   │   │   │   │                   │   ├── FastMultiDexer.java
│   │   │   │   │   │                   │   ├── dex/
│   │   │   │   │   │                   │   │   ├── DexGroup.java
│   │   │   │   │   │                   │   │   ├── DexMerger.java
│   │   │   │   │   │                   │   │   └── FileComparator.java
│   │   │   │   │   │                   │   └── mutli/
│   │   │   │   │   │                   │       ├── JarRefactor.java
│   │   │   │   │   │                   │       ├── MainDexLister.java
│   │   │   │   │   │                   │       ├── MappingReaderProcess.java
│   │   │   │   │   │                   │       └── NameComparator.java
│   │   │   │   │   │                   ├── process/
│   │   │   │   │   │                   │   └── ApkProcessor.java
│   │   │   │   │   │                   ├── proguard/
│   │   │   │   │   │                   │   ├── AtlasProguardHelper.java
│   │   │   │   │   │                   │   ├── AwbProguardConfiguration.java
│   │   │   │   │   │                   │   ├── BundleProguarder.java
│   │   │   │   │   │                   │   ├── KeepOnlyConfigurationParser.java
│   │   │   │   │   │                   │   ├── ProGuardPercentPrinter.java
│   │   │   │   │   │                   │   ├── domain/
│   │   │   │   │   │                   │   │   ├── Input.java
│   │   │   │   │   │                   │   │   └── Result.java
│   │   │   │   │   │                   │   └── dump/
│   │   │   │   │   │                   │       ├── AbstractClasslVisitor.java
│   │   │   │   │   │                   │       ├── BundleProguardDumper.java
│   │   │   │   │   │                   │       ├── ClassDetailVisitor.java
│   │   │   │   │   │                   │       ├── ClassStructVisitor.java
│   │   │   │   │   │                   │       ├── ClazzRefInfo.java
│   │   │   │   │   │                   │       ├── ClazzRefInfoContainer.java
│   │   │   │   │   │                   │       ├── KeepConverter.java
│   │   │   │   │   │                   │       ├── VisitorDTO.java
│   │   │   │   │   │                   │       └── utils/
│   │   │   │   │   │                   │           └── ReflectUtils.java
│   │   │   │   │   │                   ├── sign/
│   │   │   │   │   │                   │   ├── AndroidSigner.java
│   │   │   │   │   │                   │   ├── LocalSignHelper.java
│   │   │   │   │   │                   │   └── LocalSignedJarBuilder.java
│   │   │   │   │   │                   ├── solib/
│   │   │   │   │   │                   │   ├── NativeSoFilter.java
│   │   │   │   │   │                   │   └── NativeSoUtils.java
│   │   │   │   │   │                   ├── xml/
│   │   │   │   │   │                   │   └── XmlHelper.java
│   │   │   │   │   │                   ├── zip/
│   │   │   │   │   │                   │   ├── BetterZip.java
│   │   │   │   │   │                   │   ├── FileMkUtils.java
│   │   │   │   │   │                   │   └── ZipUtils.java
│   │   │   │   │   │                   └── zipalign/
│   │   │   │   │   │                       └── ZipAlignUtils.java
│   │   │   │   │   └── proguard/
│   │   │   │   │       ├── AtlasProguardConstants.java
│   │   │   │   │       └── io/
│   │   │   │   │           └── JarWriter.java
│   │   │   │   └── resources/
│   │   │   │       └── META-INF/
│   │   │   │           └── gradle-plugins/
│   │   │   │               ├── com.taobao.atlas.application.properties
│   │   │   │               ├── com.taobao.atlas.dexpatch.properties
│   │   │   │               ├── com.taobao.atlas.feature.properties
│   │   │   │               ├── com.taobao.atlas.instantapp.properties
│   │   │   │               ├── com.taobao.atlas.library.properties
│   │   │   │               └── com.taobao.atlas.properties
│   │   │   └── test/
│   │   │       ├── java/
│   │   │       │   ├── com/
│   │   │       │   │   └── taobao/
│   │   │       │   │       ├── asm/
│   │   │       │   │       │   ├── AsmExample.java
│   │   │       │   │       │   ├── AsmFieldTest.java
│   │   │       │   │       │   ├── AsmTest.java
│   │   │       │   │       │   └── Config.java
│   │   │       │   │       └── atlas/
│   │   │       │   │           ├── bundle/
│   │   │       │   │           │   └── BundleDependenyTest.java
│   │   │       │   │           ├── cache/
│   │   │       │   │           │   └── FileLockTest.java
│   │   │       │   │           ├── dex/
│   │   │       │   │           │   └── FastDexMergeTest.java
│   │   │       │   │           └── manifest/
│   │   │       │   │               ├── ManifestHelperTest.java
│   │   │       │   │               └── ManifestTest.java
│   │   │       │   └── proguard/
│   │   │       │       └── KeepOnlyConfigurationParserTest.java
│   │   │       └── resources/
│   │   │           ├── AndroidManifest.xml
│   │   │           ├── AndroidManifest2.xml
│   │   │           ├── bundleInfoList.json
│   │   │           └── log4j.properties
│   │   ├── test.sh
│   │   └── todo.txt
│   ├── build.gradle
│   ├── dexpatch/
│   │   ├── .gitignore
│   │   ├── build.gradle
│   │   ├── gradle/
│   │   │   └── wrapper/
│   │   │       ├── gradle-wrapper.jar
│   │   │       └── gradle-wrapper.properties
│   │   ├── gradlew
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   ├── android/
│   │           │   │   └── content/
│   │           │   │       └── res/
│   │           │   │           ├── AXMLResource.java
│   │           │   │           ├── IntReader.java
│   │           │   │           └── chunk/
│   │           │   │               ├── AttributeType.java
│   │           │   │               ├── ChunkType.java
│   │           │   │               ├── ChunkUtil.java
│   │           │   │               ├── PoolItem.java
│   │           │   │               ├── sections/
│   │           │   │               │   ├── ChunkSection.java
│   │           │   │               │   ├── GenericChunkSection.java
│   │           │   │               │   ├── ResourceSection.java
│   │           │   │               │   └── StringSection.java
│   │           │   │               └── types/
│   │           │   │                   ├── AXMLHeader.java
│   │           │   │                   ├── Attribute.java
│   │           │   │                   ├── Buffer.java
│   │           │   │                   ├── Chunk.java
│   │           │   │                   ├── EndTag.java
│   │           │   │                   ├── GenericChunk.java
│   │           │   │                   ├── NameSpace.java
│   │           │   │                   ├── StartTag.java
│   │           │   │                   └── TextTag.java
│   │           │   └── com/
│   │           │       └── taobao/
│   │           │           ├── android/
│   │           │           │   ├── PatchManager.java
│   │           │           │   ├── PatchType.java
│   │           │           │   ├── apatch/
│   │           │           │   │   ├── AndFixFilterImpl.java
│   │           │           │   │   ├── ApkPatch.java
│   │           │           │   │   ├── Build.java
│   │           │           │   │   ├── FastBuild.java
│   │           │           │   │   ├── MergePatch.java
│   │           │           │   │   ├── annotation/
│   │           │           │   │   │   └── MethodReplaceAnnotation.java
│   │           │           │   │   ├── builder/
│   │           │           │   │   │   ├── PatchBuilder.java
│   │           │           │   │   │   └── SignedJarBuilder.java
│   │           │           │   │   └── utils/
│   │           │           │   │       ├── Formater.java
│   │           │           │   │       ├── HexUtil.java
│   │           │           │   │       ├── MappingParser.java
│   │           │           │   │       ├── SmaliDiffUtils.java
│   │           │           │   │       └── TypeGenUtil.java
│   │           │           │   ├── baksmali/
│   │           │           │   │   ├── Renderers/
│   │           │           │   │   │   ├── BooleanRenderer.java
│   │           │           │   │   │   ├── ByteRenderer.java
│   │           │           │   │   │   ├── CharRenderer.java
│   │           │           │   │   │   ├── DoubleRenderer.java
│   │           │           │   │   │   ├── FloatRenderer.java
│   │           │           │   │   │   ├── IntegerRenderer.java
│   │           │           │   │   │   ├── LongRenderer.java
│   │           │           │   │   │   └── ShortRenderer.java
│   │           │           │   │   ├── adaptors/
│   │           │           │   │   │   ├── AnnotationFormatter.java
│   │           │           │   │   │   ├── BlankMethodItem.java
│   │           │           │   │   │   ├── CatchMethodItem.java
│   │           │           │   │   │   ├── ClassDefinition.java
│   │           │           │   │   │   ├── CommentMethodItem.java
│   │           │           │   │   │   ├── CommentedOutMethodItem.java
│   │           │           │   │   │   ├── CommentingIndentingWriter.java
│   │           │           │   │   │   ├── Debug/
│   │           │           │   │   │   │   ├── BeginEpilogueMethodItem.java
│   │           │           │   │   │   │   ├── DebugMethodItem.java
│   │           │           │   │   │   │   ├── EndLocalMethodItem.java
│   │           │           │   │   │   │   ├── EndPrologueMethodItem.java
│   │           │           │   │   │   │   ├── LineNumberMethodItem.java
│   │           │           │   │   │   │   ├── LocalFormatter.java
│   │           │           │   │   │   │   ├── RestartLocalMethodItem.java
│   │           │           │   │   │   │   ├── SetSourceFileMethodItem.java
│   │           │           │   │   │   │   └── StartLocalMethodItem.java
│   │           │           │   │   │   ├── EncodedValue/
│   │           │           │   │   │   │   ├── AnnotationEncodedValueAdaptor.java
│   │           │           │   │   │   │   ├── ArrayEncodedValueAdaptor.java
│   │           │           │   │   │   │   └── EncodedValueAdaptor.java
│   │           │           │   │   │   ├── EndTryLabelMethodItem.java
│   │           │           │   │   │   ├── FieldDefinition.java
│   │           │           │   │   │   ├── Format/
│   │           │           │   │   │   │   ├── ArrayDataMethodItem.java
│   │           │           │   │   │   │   ├── InstructionMethodItem.java
│   │           │           │   │   │   │   ├── InstructionMethodItemFactory.java
│   │           │           │   │   │   │   ├── OffsetInstructionFormatMethodItem.java
│   │           │           │   │   │   │   ├── PackedSwitchMethodItem.java
│   │           │           │   │   │   │   ├── SparseSwitchMethodItem.java
│   │           │           │   │   │   │   └── UnresolvedOdexInstructionMethodItem.java
│   │           │           │   │   │   ├── LabelMethodItem.java
│   │           │           │   │   │   ├── MethodDefinition.java
│   │           │           │   │   │   ├── MethodItem.java
│   │           │           │   │   │   ├── PostInstructionRegisterInfoMethodItem.java
│   │           │           │   │   │   ├── PreInstructionRegisterInfoMethodItem.java
│   │           │           │   │   │   ├── ReferenceFormatter.java
│   │           │           │   │   │   ├── RegisterFormatter.java
│   │           │           │   │   │   └── SyntheticAccessCommentMethodItem.java
│   │           │           │   │   └── util/
│   │           │           │   │       └── ReferenceUtil.java
│   │           │           │   ├── dex/
│   │           │           │   │   ├── Annotation.java
│   │           │           │   │   ├── ClassData.java
│   │           │           │   │   ├── ClassDef.java
│   │           │           │   │   ├── Code.java
│   │           │           │   │   ├── Dex.java
│   │           │           │   │   ├── DexException.java
│   │           │           │   │   ├── DexFormat.java
│   │           │           │   │   ├── DexIndexOverflowException.java
│   │           │           │   │   ├── EncodedValue.java
│   │           │           │   │   ├── EncodedValueCodec.java
│   │           │           │   │   ├── EncodedValueReader.java
│   │           │           │   │   ├── FieldId.java
│   │           │           │   │   ├── Leb128.java
│   │           │           │   │   ├── MethodId.java
│   │           │           │   │   ├── Mutf8.java
│   │           │           │   │   ├── ProtoId.java
│   │           │           │   │   ├── SizeOf.java
│   │           │           │   │   ├── TableOfContents.java
│   │           │           │   │   ├── TypeList.java
│   │           │           │   │   └── util/
│   │           │           │   │       ├── ByteArrayByteInput.java
│   │           │           │   │       ├── ByteInput.java
│   │           │           │   │       ├── ByteOutput.java
│   │           │           │   │       ├── ExceptionWithContext.java
│   │           │           │   │       ├── FileUtils.java
│   │           │           │   │       └── Unsigned.java
│   │           │           │   ├── differ/
│   │           │           │   │   └── dex/
│   │           │           │   │       ├── ApkDiff.java
│   │           │           │   │       ├── BundleDiffResult.java
│   │           │           │   │       ├── DexDiffer.java
│   │           │           │   │       └── PatchException.java
│   │           │           │   ├── dx/
│   │           │           │   │   ├── Version.java
│   │           │           │   │   ├── cf/
│   │           │           │   │   │   ├── attrib/
│   │           │           │   │   │   │   ├── AttAnnotationDefault.java
│   │           │           │   │   │   │   ├── AttCode.java
│   │           │           │   │   │   │   ├── AttConstantValue.java
│   │           │           │   │   │   │   ├── AttDeprecated.java
│   │           │           │   │   │   │   ├── AttEnclosingMethod.java
│   │           │           │   │   │   │   ├── AttExceptions.java
│   │           │           │   │   │   │   ├── AttInnerClasses.java
│   │           │           │   │   │   │   ├── AttLineNumberTable.java
│   │           │           │   │   │   │   ├── AttLocalVariableTable.java
│   │           │           │   │   │   │   ├── AttLocalVariableTypeTable.java
│   │           │           │   │   │   │   ├── AttRuntimeInvisibleAnnotations.java
│   │           │           │   │   │   │   ├── AttRuntimeInvisibleParameterAnnotations.java
│   │           │           │   │   │   │   ├── AttRuntimeVisibleAnnotations.java
│   │           │           │   │   │   │   ├── AttRuntimeVisibleParameterAnnotations.java
│   │           │           │   │   │   │   ├── AttSignature.java
│   │           │           │   │   │   │   ├── AttSourceFile.java
│   │           │           │   │   │   │   ├── AttSynthetic.java
│   │           │           │   │   │   │   ├── BaseAnnotations.java
│   │           │           │   │   │   │   ├── BaseAttribute.java
│   │           │           │   │   │   │   ├── BaseLocalVariables.java
│   │           │           │   │   │   │   ├── BaseParameterAnnotations.java
│   │           │           │   │   │   │   ├── InnerClassList.java
│   │           │           │   │   │   │   ├── RawAttribute.java
│   │           │           │   │   │   │   └── package.html
│   │           │           │   │   │   ├── code/
│   │           │           │   │   │   │   ├── BaseMachine.java
│   │           │           │   │   │   │   ├── BasicBlocker.java
│   │           │           │   │   │   │   ├── ByteBlock.java
│   │           │           │   │   │   │   ├── ByteBlockList.java
│   │           │           │   │   │   │   ├── ByteCatchList.java
│   │           │           │   │   │   │   ├── ByteOps.java
│   │           │           │   │   │   │   ├── BytecodeArray.java
│   │           │           │   │   │   │   ├── ConcreteMethod.java
│   │           │           │   │   │   │   ├── ExecutionStack.java
│   │           │           │   │   │   │   ├── Frame.java
│   │           │           │   │   │   │   ├── LineNumberList.java
│   │           │           │   │   │   │   ├── LocalVariableList.java
│   │           │           │   │   │   │   ├── LocalsArray.java
│   │           │           │   │   │   │   ├── LocalsArraySet.java
│   │           │           │   │   │   │   ├── Machine.java
│   │           │           │   │   │   │   ├── Merger.java
│   │           │           │   │   │   │   ├── OneLocalsArray.java
│   │           │           │   │   │   │   ├── ReturnAddress.java
│   │           │           │   │   │   │   ├── Ropper.java
│   │           │           │   │   │   │   ├── RopperMachine.java
│   │           │           │   │   │   │   ├── SimException.java
│   │           │           │   │   │   │   ├── Simulator.java
│   │           │           │   │   │   │   ├── SwitchList.java
│   │           │           │   │   │   │   ├── ValueAwareMachine.java
│   │           │           │   │   │   │   └── package.html
│   │           │           │   │   │   ├── cst/
│   │           │           │   │   │   │   ├── ConstantPoolParser.java
│   │           │           │   │   │   │   └── ConstantTags.java
│   │           │           │   │   │   ├── direct/
│   │           │           │   │   │   │   ├── AnnotationParser.java
│   │           │           │   │   │   │   ├── AttributeFactory.java
│   │           │           │   │   │   │   ├── AttributeListParser.java
│   │           │           │   │   │   │   ├── ClassPathOpener.java
│   │           │           │   │   │   │   ├── CodeObserver.java
│   │           │           │   │   │   │   ├── DirectClassFile.java
│   │           │           │   │   │   │   ├── FieldListParser.java
│   │           │           │   │   │   │   ├── MemberListParser.java
│   │           │           │   │   │   │   ├── MethodListParser.java
│   │           │           │   │   │   │   ├── StdAttributeFactory.java
│   │           │           │   │   │   │   └── package.html
│   │           │           │   │   │   └── iface/
│   │           │           │   │   │       ├── Attribute.java
│   │           │           │   │   │       ├── AttributeList.java
│   │           │           │   │   │       ├── ClassFile.java
│   │           │           │   │   │       ├── Field.java
│   │           │           │   │   │       ├── FieldList.java
│   │           │           │   │   │       ├── HasAttribute.java
│   │           │           │   │   │       ├── Member.java
│   │           │           │   │   │       ├── Method.java
│   │           │           │   │   │       ├── MethodList.java
│   │           │           │   │   │       ├── ParseException.java
│   │           │           │   │   │       ├── ParseObserver.java
│   │           │           │   │   │       ├── StdAttributeList.java
│   │           │           │   │   │       ├── StdField.java
│   │           │           │   │   │       ├── StdFieldList.java
│   │           │           │   │   │       ├── StdMember.java
│   │           │           │   │   │       ├── StdMethod.java
│   │           │           │   │   │       ├── StdMethodList.java
│   │           │           │   │   │       └── package.html
│   │           │           │   │   ├── command/
│   │           │           │   │   │   ├── DxConsole.java
│   │           │           │   │   │   ├── Main.java
│   │           │           │   │   │   ├── UsageException.java
│   │           │           │   │   │   ├── annotool/
│   │           │           │   │   │   │   ├── AnnotationLister.java
│   │           │           │   │   │   │   └── Main.java
│   │           │           │   │   │   ├── dexer/
│   │           │           │   │   │   │   └── Main.java
│   │           │           │   │   │   ├── dump/
│   │           │           │   │   │   │   ├── Args.java
│   │           │           │   │   │   │   ├── BaseDumper.java
│   │           │           │   │   │   │   ├── BlockDumper.java
│   │           │           │   │   │   │   ├── ClassDumper.java
│   │           │           │   │   │   │   ├── DotDumper.java
│   │           │           │   │   │   │   ├── Main.java
│   │           │           │   │   │   │   └── SsaDumper.java
│   │           │           │   │   │   ├── findusages/
│   │           │           │   │   │   │   ├── FindUsages.java
│   │           │           │   │   │   │   └── Main.java
│   │           │           │   │   │   └── grep/
│   │           │           │   │   │       ├── Grep.java
│   │           │           │   │   │       └── Main.java
│   │           │           │   │   ├── dex/
│   │           │           │   │   │   ├── DexOptions.java
│   │           │           │   │   │   ├── cf/
│   │           │           │   │   │   │   ├── AttributeTranslator.java
│   │           │           │   │   │   │   ├── CfOptions.java
│   │           │           │   │   │   │   ├── CfTranslator.java
│   │           │           │   │   │   │   ├── CodeStatistics.java
│   │           │           │   │   │   │   ├── OptimizerOptions.java
│   │           │           │   │   │   │   └── package.html
│   │           │           │   │   │   ├── code/
│   │           │           │   │   │   │   ├── ArrayData.java
│   │           │           │   │   │   │   ├── BlockAddresses.java
│   │           │           │   │   │   │   ├── CatchBuilder.java
│   │           │           │   │   │   │   ├── CatchHandlerList.java
│   │           │           │   │   │   │   ├── CatchTable.java
│   │           │           │   │   │   │   ├── CodeAddress.java
│   │           │           │   │   │   │   ├── CstInsn.java
│   │           │           │   │   │   │   ├── DalvCode.java
│   │           │           │   │   │   │   ├── DalvInsn.java
│   │           │           │   │   │   │   ├── DalvInsnList.java
│   │           │           │   │   │   │   ├── Dop.java
│   │           │           │   │   │   │   ├── Dops.java
│   │           │           │   │   │   │   ├── FixedSizeInsn.java
│   │           │           │   │   │   │   ├── HighRegisterPrefix.java
│   │           │           │   │   │   │  
Download .txt
Showing preview only (2,383K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (27769 symbols across 2683 files)

FILE: atlas-aapt-old/frameworks/base/include/androidfw/Asset.h
  function namespace (line 32) | namespace android {

FILE: atlas-aapt-old/frameworks/base/include/androidfw/AssetDir.h
  function namespace (line 29) | namespace android {
  function setFileList (line 138) | void setFileList(SortedVector<FileInfo>* list) { mFileInfo = list; }

FILE: atlas-aapt-old/frameworks/base/include/androidfw/AssetManager.h
  type AAssetManager (line 40) | struct AAssetManager { }
  function namespace (line 51) | namespace android {

FILE: atlas-aapt-old/frameworks/base/include/androidfw/BackupHelpers.h
  function namespace (line 24) | namespace android {

FILE: atlas-aapt-old/frameworks/base/include/androidfw/ByteBucketArray.h
  function namespace (line 24) | namespace android {

FILE: atlas-aapt-old/frameworks/base/include/androidfw/CursorWindow.h
  function namespace (line 39) | namespace android {

FILE: atlas-aapt-old/frameworks/base/include/androidfw/ObbFile.h
  function namespace (line 26) | namespace android {

FILE: atlas-aapt-old/frameworks/base/include/androidfw/ResourceTypes.h
  function namespace (line 37) | namespace android {
  type ResChunk_header (line 180) | struct ResChunk_header
  type Res_value (line 246) | struct Res_value
  type ResTable_ref (line 368) | struct ResTable_ref
  type ResStringPool_ref (line 376) | struct ResStringPool_ref
  type ResStringPool_header (line 407) | struct ResStringPool_header
  type ResStringPool_span (line 441) | struct ResStringPool_span
  function class (line 459) | class ResStringPool

FILE: atlas-aapt-old/frameworks/base/include/androidfw/StreamingZipInflater.h
  function namespace (line 26) | namespace android {

FILE: atlas-aapt-old/frameworks/base/include/androidfw/TypeWrappers.h
  function namespace (line 22) | namespace android {
  function ResTable_entry (line 49) | const ResTable_entry* operator->() const {

FILE: atlas-aapt-old/frameworks/base/include/androidfw/ZipFileRO.h
  function namespace (line 45) | namespace android {

FILE: atlas-aapt-old/frameworks/base/include/androidfw/ZipUtils.h
  function namespace (line 26) | namespace android {

FILE: atlas-aapt-old/frameworks/base/include/androidfw/misc.h
  function namespace (line 25) | namespace android {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/Asset.cpp
  function String8 (line 59) | String8 Asset::getAssetAllocations()
  function Asset (line 121) | Asset* Asset::createFromFile(const char* fileName, AccessMode mode)
  function Asset (line 177) | Asset* Asset::createFromCompressedFile(const char* fileName,
  function Asset (line 235) | Asset* Asset::createFromFileSegment(int fd, off64_t offset,
  function Asset (line 253) | Asset* Asset::createFromCompressedData(int fd, off64_t offset,
  function Asset (line 274) | Asset* Asset::createFromUncompressedMap(FileMap* dataMap,
  function Asset (line 292) | Asset* Asset::createFromCompressedMap(FileMap* dataMap,
  function off64_t (line 315) | off64_t Asset::handleSeek(off64_t offset, int whence, off64_t curPosn, o...
  function status_t (line 373) | status_t _FileAsset::openChunk(const char* fileName, int fd, off64_t off...
  function status_t (line 419) | status_t _FileAsset::openChunk(FileMap* dataMap)
  function off64_t (line 502) | off64_t _FileAsset::seek(off64_t offset, int whence)
  function status_t (line 698) | status_t _CompressedAsset::openChunk(int fd, off64_t offset,
  function status_t (line 731) | status_t _CompressedAsset::openChunk(FileMap* dataMap, int compressionMe...
  function off64_t (line 802) | off64_t _CompressedAsset::seek(off64_t offset, int whence)

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/AssetManager.cpp
  function String8 (line 93) | String8 idmapPathForPackagePath(const String8& pkgPath)
  function String8 (line 343) | String8 AssetManager::getAssetPath(const int32_t cookie) const
  function Asset (line 489) | Asset* AssetManager::open(const char* fileName, AccessMode mode)
  function Asset (line 526) | Asset* AssetManager::openNonAsset(const char* fileName, AccessMode mode,...
  function Asset (line 555) | Asset* AssetManager::openNonAsset(const int32_t cookie, const char* file...
  function FileType (line 585) | FileType AssetManager::getFileType(const char* fileName)
  function ResTable (line 693) | const ResTable* AssetManager::getResTable(bool required) const
  function Asset (line 751) | Asset* AssetManager::openIdmapLocked(const struct asset_path& ap) const
  function ResTable (line 806) | const ResTable& AssetManager::getResources(bool required) const
  function Asset (line 843) | Asset* AssetManager::openNonAssetInPathLocked(const char* fileName, Acce...
  function Asset (line 900) | Asset* AssetManager::openInPathLocked(const char* fileName, AccessMode m...
  function Asset (line 929) | Asset* AssetManager::openInLocaleVendorLocked(const char* fileName, Acce...
  function String8 (line 1048) | String8 AssetManager::createZipSourceNameLocked(const String8& zipFileName,
  function String8 (line 1064) | String8 AssetManager::createPathNameLocked(const asset_path& ap, const c...
  function String8 (line 1076) | String8 AssetManager::createPathNameLocked(const asset_path& ap, const c...
  function ZipFileRO (line 1096) | ZipFileRO* AssetManager::getZipFileLocked(const asset_path& ap)
  function Asset (line 1115) | Asset* AssetManager::openAssetFromFileLocked(const String8& pathName,
  function Asset (line 1137) | Asset* AssetManager::openAssetFromZipLocked(const ZipFileRO* pZipFile,
  function AssetDir (line 1192) | AssetDir* AssetManager::openDir(const char* dirName)
  function AssetDir (line 1255) | AssetDir* AssetManager::openNonAssetDir(const int32_t cookie, const char...
  type dirent (line 1441) | struct dirent
  function ZipFileRO (line 1893) | ZipFileRO* AssetManager::SharedZip::getZip()
  function Asset (line 1898) | Asset* AssetManager::SharedZip::getResourceTableAsset()
  function Asset (line 1904) | Asset* AssetManager::SharedZip::setResourceTableAsset(Asset* asset)
  function ResTable (line 1920) | ResTable* AssetManager::SharedZip::getResourceTable()
  function ResTable (line 1926) | ResTable* AssetManager::SharedZip::setResourceTable(ResTable* res)
  function ZipFileRO (line 2009) | ZipFileRO* AssetManager::ZipSet::getZip(const String8& path)
  function Asset (line 2020) | Asset* AssetManager::ZipSet::getZipResourceTableAsset(const String8& path)
  function Asset (line 2031) | Asset* AssetManager::ZipSet::setZipResourceTableAsset(const String8& path,
  function ResTable (line 2040) | ResTable* AssetManager::ZipSet::getZipResourceTable(const String8& path)
  function ResTable (line 2051) | ResTable* AssetManager::ZipSet::setZipResourceTable(const String8& path,
  function String8 (line 2066) | String8 AssetManager::ZipSet::getPathName(const char* zipPath)

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/BackupData.cpp
  type android (line 28) | namespace android {
    function round_up (line 47) | static inline size_t
    function padding_extra (line 53) | static inline size_t
    function status_t (line 73) | status_t
    function status_t (line 93) | status_t
    function status_t (line 152) | status_t
    function status_t (line 199) | status_t
    function status_t (line 229) | status_t
    function status_t (line 304) | status_t
    function status_t (line 318) | status_t
    function status_t (line 367) | status_t

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/BackupHelpers.cpp
  type android (line 39) | namespace android {
    type file_metadata_v1 (line 62) | struct file_metadata_v1 {
    function round_up (line 83) | static inline int
    function read_snapshot_file (line 89) | static int
    function write_snapshot_file (line 146) | static int
    function write_delete_file (line 207) | static int
    function write_update_file (line 214) | static int
    function write_update_file (line 291) | static int
    function compute_crc32 (line 312) | static int
    function back_up_files (line 331) | int
    function calc_tar_checksum (line 457) | static void calc_tar_checksum(char* buf) {
    function write_pax_header_entry (line 472) | static int write_pax_header_entry(char* buf, const char* key, const ch...
    function send_tarfile_chunk (line 486) | void send_tarfile_chunk(BackupDataWriter* writer, const char* buffer, ...
    function write_tarfile (line 492) | int write_tarfile(const String8& packageName, const String8& domain,
    function status_t (line 738) | status_t
    function status_t (line 818) | status_t
    function write_text_file (line 828) | static int
    function compare_file (line 853) | static int
    function backup_helper_test_empty (line 900) | int
    function backup_helper_test_four (line 959) | int
    function test_write_header_and_entity (line 1140) | static int
    function backup_helper_test_data_writer (line 1161) | int
    function test_read_header_and_entity (line 1196) | int
    function backup_helper_test_data_reader (line 1267) | int
    function get_mod_time (line 1326) | static int
    function backup_helper_test_files (line 1357) | int
    function backup_helper_test_null_base (line 1489) | int
    function backup_helper_test_missing_file (line 1538) | int

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/CursorWindow.cpp
  type android (line 31) | namespace android {
    function status_t (line 44) | status_t CursorWindow::create(const String8& name, size_t size, Cursor...
    function status_t (line 85) | status_t CursorWindow::createFromParcel(Parcel* parcel, CursorWindow**...
    function status_t (line 124) | status_t CursorWindow::writeToParcel(Parcel* parcel) {
    function status_t (line 132) | status_t CursorWindow::clear() {
    function status_t (line 147) | status_t CursorWindow::setNumColumns(uint32_t numColumns) {
    function status_t (line 161) | status_t CursorWindow::allocRow() {
    function status_t (line 190) | status_t CursorWindow::freeLastRow() {
    function status_t (line 273) | status_t CursorWindow::putBlob(uint32_t row, uint32_t column, const vo...
    function status_t (line 277) | status_t CursorWindow::putString(uint32_t row, uint32_t column, const ...
    function status_t (line 282) | status_t CursorWindow::putBlobOrString(uint32_t row, uint32_t column,
    function status_t (line 306) | status_t CursorWindow::putLong(uint32_t row, uint32_t column, int64_t ...
    function status_t (line 321) | status_t CursorWindow::putDouble(uint32_t row, uint32_t column, double...
    function status_t (line 336) | status_t CursorWindow::putNull(uint32_t row, uint32_t column) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/ObbFile.cpp
  type android (line 73) | namespace android {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/ResourceTypes.cpp
  type android (line 54) | namespace android {
    function isspace16 (line 82) | inline int isspace16(char16_t c) {
    function T (line 87) | inline static T max(T a, T b) {
    function strcpy16_dtoh (line 94) | static void strcpy16_dtoh(uint16_t* dst, const uint16_t* src, size_t a...
    function status_t (line 105) | static status_t validate_chunk(const ResChunk_header* chunk,
    function fill9patchOffsets (line 136) | static void fill9patchOffsets(Res_png_9patch* patch) {
    function assertIdmapHeader (line 229) | static bool assertIdmapHeader(const void* idmap, size_t size) {
    class IdmapEntries (line 258) | class IdmapEntries {
      method IdmapEntries (line 260) | IdmapEntries() : mData(NULL) {}
      method hasEntries (line 262) | bool hasEntries() const {
      method byteSize (line 270) | size_t byteSize() const {
      method targetTypeId (line 278) | uint8_t targetTypeId() const {
      method overlayTypeId (line 285) | uint8_t overlayTypeId() const {
      method status_t (line 292) | status_t setTo(const void* entryHeader, size_t size) {
      method status_t (line 321) | status_t lookup(uint16_t entryId, uint16_t* outEntryId) const {
    function status_t (line 353) | status_t parseIdmap(const void* idmap, size_t size, uint8_t* outPackag...
    function Res_png_9patch (line 405) | Res_png_9patch* Res_png_9patch::deserialize(void* inData)
    function status_t (line 451) | status_t ResStringPool::setTo(const void* data, size_t size, bool copy...
    function status_t (line 628) | status_t ResStringPool::getError() const
    function decodeLength (line 662) | static inline size_t
    function decodeLength (line 684) | static inline size_t
    function String8 (line 806) | const String8 ResStringPool::string8ObjectAt(size_t idx) const
    function ResStringPool_span (line 821) | const ResStringPool_span* ResStringPool::styleAt(const ResStringPool_r...
    function ResStringPool_span (line 826) | const ResStringPool_span* ResStringPool::styleAt(size_t idx) const
    function ResStringPool (line 993) | const ResStringPool& ResXMLParser::getStrings() const
    function status_t (line 1497) | status_t ResXMLTree::setTo(const void* data, size_t size, bool copyData)
    function status_t (line 1590) | status_t ResXMLTree::getError() const
    function status_t (line 1606) | status_t ResXMLTree::validateNode(const ResXMLTree_node* node) const
    function unpackLanguageOrRegion (line 1696) | size_t unpackLanguageOrRegion(const char in[2], const char base,
    function packLanguageOrRegion (line 1728) | void packLanguageOrRegion(const char* in, const char base,
    function compareLocales (line 1790) | inline int compareLocales(const ResTable_config &l, const ResTable_con...
    function assignLocaleComponent (line 2509) | inline bool assignLocaleComponent(ResTable_config* config,
    function String8 (line 2560) | String8 ResTable_config::toString() const {
    type ResTable::Header (line 2835) | struct ResTable::Header
      method Header (line 2837) | Header(ResTable* _owner) : owner(_owner), ownedData(NULL), header(NU...
    type ResTable::Entry (line 2858) | struct ResTable::Entry {
    type ResTable::Type (line 2869) | struct ResTable::Type
      method Type (line 2871) | Type(const Header* _header, const Package* _package, size_t count)
    type ResTable::Package (line 2883) | struct ResTable::Package
      method Package (line 2885) | Package(ResTable* _owner, const Header* _header, const ResTable_pack...
    type ResTable::PackageGroup (line 2907) | struct ResTable::PackageGroup
      method PackageGroup (line 2909) | PackageGroup(ResTable* _owner, const String16& _name, uint32_t _id)
      method clearBagCache (line 2940) | void clearBagCache() {
      method findType16 (line 2965) | ssize_t findType16(const char16_t* type, size_t len) const {
    type ResTable::bag_set (line 3001) | struct ResTable::bag_set
    function status_t (line 3054) | status_t ResTable::Theme::applyStyle(uint32_t resID, bool force)
    function status_t (line 3143) | status_t ResTable::Theme::setTo(const Theme& other)
    function status_t (line 3308) | status_t ResTable::add(const void* data, size_t size, const int32_t co...
    function status_t (line 3312) | status_t ResTable::add(const void* data, size_t size, const void* idma...
    function status_t (line 3317) | status_t ResTable::add(Asset* asset, const int32_t cookie, bool copyDa...
    function status_t (line 3327) | status_t ResTable::add(Asset* asset, Asset* idmapAsset, const int32_t ...
    function status_t (line 3349) | status_t ResTable::add(ResTable* src)
    function status_t (line 3382) | status_t ResTable::addEmpty(const int32_t cookie) {
    function status_t (line 3399) | status_t ResTable::addInternal(const void* data, size_t dataSize, cons...
    function status_t (line 3523) | status_t ResTable::getError() const
    type id_name_map (line 4049) | struct id_name_map {
    function get_hex (line 4325) | static uint32_t get_hex(char c, bool* outError)
    type unit_entry (line 4338) | struct unit_entry
    function parse_unit (line 4360) | static bool parse_unit(const char* str, Res_value* outValue,
    function String16 (line 5269) | const String16 ResTable::getBasePackageName(size_t idx) const
    function ResStringPool (line 5308) | const ResStringPool* ResTable::getTableStringBlock(size_t index) const
    function DynamicRefTable (line 5318) | const DynamicRefTable* ResTable::getDynamicRefTableForCookie(int32_t c...
    function status_t (line 5456) | status_t ResTable::getEntry(
    function status_t (line 5599) | status_t ResTable::parsePackage(const ResTable_package* const pkg,
    function status_t (line 5898) | status_t DynamicRefTable::load(const ResTable_lib_header* const header)
    function status_t (line 5927) | status_t DynamicRefTable::addMappings(const DynamicRefTable& other) {
    function status_t (line 5958) | status_t DynamicRefTable::addMapping(const String16& packageName, uint...
    function status_t (line 5968) | status_t DynamicRefTable::lookupResourceId(uint32_t* resId) const {
    function status_t (line 6002) | status_t DynamicRefTable::lookupResourceValue(Res_value* value) const {
    type IdmapTypeMap (line 6016) | struct IdmapTypeMap {
    function status_t (line 6022) | status_t ResTable::createIdmap(const ResTable& overlay,
    function print_complex (line 6204) | static void print_complex(uint32_t complex, bool isFraction)
    function String8 (line 6239) | String8 ResTable::normalizeForOutput( const char *input )

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/StreamingZipInflater.cpp
  function min_of (line 44) | static inline size_t min_of(size_t a, size_t b) { return (a < b) ? a : b; }
  function off64_t (line 229) | off64_t StreamingZipInflater::seekAbsolute(off64_t absoluteInputPosition) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/TypeWrappers.cpp
  type android (line 19) | namespace android {
    function ResTable_entry (line 29) | const ResTable_entry* TypeVariant::iterator::operator*() const {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/ZipFileRO.cpp
  class _ZipEntryRO (line 47) | class _ZipEntryRO {
    method _ZipEntryRO (line 53) | _ZipEntryRO() : cookie(NULL) {
  function ZipFileRO (line 70) | ZipFileRO* ZipFileRO::open(const char* zipFileName)
  function ZipEntryRO (line 83) | ZipEntryRO ZipFileRO::findEntryByName(const char* entryName) const
  function ZipEntryRO (line 146) | ZipEntryRO ZipFileRO::nextEntry(void* cookie)
  function FileMap (line 193) | FileMap* ZipFileRO::createEntryFileMap(ZipEntryRO entry) const

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/ZipUtils.cpp
  function get4LE (line 36) | static inline unsigned long get4LE(const unsigned char* buf) {
  function inflateToBuffer (line 54) | bool inflateToBuffer(T& reader, void* buf,
  class FileReader (line 151) | class FileReader {
    method FileReader (line 153) | FileReader(FILE* fp) :
    method read (line 162) | long read(unsigned char** nextBuffer, long readSize) const {
  class FdReader (line 171) | class FdReader {
    method FdReader (line 173) | FdReader(int fd) :
    method read (line 182) | long read(unsigned char** nextBuffer, long readSize) const {
  class BufferReader (line 191) | class BufferReader {
    method BufferReader (line 193) | BufferReader(void* input, size_t inputSize) :
    method read (line 200) | long read(unsigned char** nextBuffer, long /*readSize*/) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/misc.cpp
  type android (line 31) | namespace android {
    function FileType (line 36) | FileType getFileType(const char* fileName)
    function time_t (line 73) | time_t getFileModDate(const char* fileName)

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/BackupData_test.cpp
  type android (line 29) | namespace android {
    class BackupDataTest (line 45) | class BackupDataTest : public testing::Test {
      method SetUp (line 54) | virtual void SetUp() {
      method TearDown (line 70) | virtual void TearDown() {
    function TEST_F (line 74) | TEST_F(BackupDataTest, WriteAndReadSingle) {
    function TEST_F (line 116) | TEST_F(BackupDataTest, WriteAndReadMultiple) {
    function TEST_F (line 164) | TEST_F(BackupDataTest, SkipEntity) {
    function TEST_F (line 219) | TEST_F(BackupDataTest, DeleteEntity) {
    function TEST_F (line 258) | TEST_F(BackupDataTest, EneityAfterDelete) {
    function TEST_F (line 319) | TEST_F(BackupDataTest, OnlyDeleteEntities) {
    function TEST_F (line 387) | TEST_F(BackupDataTest, ReadDeletedEntityData) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/ByteBucketArray_test.cpp
  function TEST (line 23) | TEST(ByteBucketArrayTest, TestSparseInsertion) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/ConfigLocale_test.cpp
  type android (line 22) | namespace android {
    function TEST (line 24) | TEST(ConfigLocaleTest, packAndUnpack2LetterLanguage) {
    function TEST (line 47) | TEST(ConfigLocaleTest, packAndUnpack2LetterRegion) {
    function TEST (line 62) | TEST(ConfigLocaleTest, packAndUnpack3LetterLanguage) {
    function TEST (line 78) | TEST(ConfigLocaleTest, packAndUnpack3LetterLanguageAtOffset16) {
    function TEST (line 102) | TEST(ConfigLocaleTest, packAndUnpack3LetterRegion) {
    function fillIn (line 114) | void fillIn(const char* lang, const char* country,
    function TEST (line 134) | TEST(ConfigLocaleTest, IsMoreSpecificThan) {
    function TEST (line 173) | TEST(ConfigLocaleTest, setLocale) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/Config_test.cpp
  type android (line 25) | namespace android {
    function ResTable_config (line 27) | static ResTable_config selectBest(const ResTable_config& target,
    function ResTable_config (line 45) | static ResTable_config buildDensityConfig(int density) {
    function TEST (line 53) | TEST(ConfigTest, shouldSelectBestDensity) {
    function TEST (line 86) | TEST(ConfigTest, shouldSelectBestDensityWhenNoneSpecified) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/Idmap_test.cpp
  class IdmapTest (line 47) | class IdmapTest : public ::testing::Test {
    method SetUp (line 49) | virtual void SetUp() {
    method TearDown (line 57) | virtual void TearDown() {
  function TEST_F (line 67) | TEST_F(IdmapTest, canLoadIdmap) {
  function TEST_F (line 71) | TEST_F(IdmapTest, overlayOverridesResourceValue) {
  function TEST_F (line 100) | TEST_F(IdmapTest, overlaidResourceHasSameName) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/ObbFile_test.cpp
  type android (line 30) | namespace android {
    class ObbFileTest (line 34) | class ObbFileTest : public testing::Test {
      method SetUp (line 39) | virtual void SetUp() {
      method TearDown (line 52) | virtual void TearDown() {
    function TEST_F (line 56) | TEST_F(ObbFileTest, ReadFailure) {
    function TEST_F (line 61) | TEST_F(ObbFileTest, WriteThenRead) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/ResTable_test.cpp
  function TEST (line 42) | TEST(ResTableTest, shouldLoadSuccessfully) {
  function TEST (line 47) | TEST(ResTableTest, simpleTypeIsRetrievedCorrectly) {
  function TEST (line 62) | TEST(ResTableTest, resourceNameIsResolved) {
  function TEST (line 75) | TEST(ResTableTest, noParentThemeIsAppliedCorrectly) {
  function TEST (line 95) | TEST(ResTableTest, parentThemeIsAppliedCorrectly) {
  function TEST (line 115) | TEST(ResTableTest, libraryThemeIsAppliedCorrectly) {
  function TEST (line 130) | TEST(ResTableTest, referenceToBagIsNotResolved) {
  function TEST (line 146) | TEST(ResTableTest, resourcesStillAccessibleAfterParameterChange) {
  function TEST (line 174) | TEST(ResTableTest, resourceIsOverridenWithBetterConfig) {
  function TEST (line 198) | TEST(ResTableTest, emptyTableHasSensibleDefaults) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/Split_test.cpp
  function makeConfigFrench (line 56) | void makeConfigFrench(ResTable_config* config) {
  function TEST (line 62) | TEST(SplitTest, TestLoadBase) {
  function TEST (line 67) | TEST(SplitTest, TestGetResourceFromBase) {
  function TEST (line 92) | TEST(SplitTest, TestGetResourceFromSplit) {
  function TEST (line 113) | TEST(SplitTest, ResourcesFromBaseAndSplitHaveSameNames) {
  function TEST (line 143) | TEST(SplitTest, TypeEntrySpecFlagsAreUpdated) {
  function TEST (line 166) | TEST(SplitFeatureTest, TestNewResourceIsAccessible) {
  function TEST (line 182) | TEST(SplitFeatureTest, TestNewResourceNameHasCorrectName) {
  function TEST (line 203) | TEST(SplitFeatureTest, TestNewResourceIsAccessibleByName) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/TestHelpers.h
  function namespace (line 18) | namespace android {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/Theme_test.cpp
  function TEST (line 39) | TEST(ThemeTest, DISABLED_shouldCopyThemeFromDifferentResTable) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/TypeWrappers_test.cpp
  type android (line 23) | namespace android {
    function TEST (line 78) | TEST(TypeVariantIteratorTest, shouldIterateOverTypeWithoutErrors) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/ZipUtils_test.cpp
  type android (line 26) | namespace android {
    class ZipUtilsTest (line 28) | class ZipUtilsTest : public testing::Test {
      method SetUp (line 30) | virtual void SetUp() {
      method TearDown (line 33) | virtual void TearDown() {
    function TEST_F (line 37) | TEST_F(ZipUtilsTest, ZipTimeConvertSuccess) {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/data/app/R.h
  function namespace (line 4) | namespace app {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/data/basic/R.h
  function namespace (line 4) | namespace base {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/data/lib/R.h
  function namespace (line 4) | namespace lib {

FILE: atlas-aapt-old/frameworks/base/libs/androidfw/tests/data/system/R.h
  function namespace (line 4) | namespace android {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/AaptAssets.cpp
  function validateFileName (line 38) | static bool validateFileName(const char* fileName)
  function isHidden (line 66) | static bool isHidden(const char *root, const char *path)
  function isAlpha (line 154) | inline bool isAlpha(const String8& string) {
  function isNumber (line 166) | inline bool isNumber(const String8& string) {
  function String8 (line 371) | String8 AaptLocaleValue::toDirName() const {
  function String8 (line 448) | String8
  function status_t (line 512) | status_t AaptFile::writeData(const void* data, size_t size)
  function String8 (line 532) | String8 AaptFile::getPrintableSource() const
  function status_t (line 547) | status_t AaptGroup::addFile(const sp<AaptFile>& file, const bool overwri...
  function String8 (line 603) | String8 AaptGroup::getPrintableSource() const
  function status_t (line 619) | status_t AaptDir::addFile(const String8& name, const sp<AaptGroup>& file)
  function status_t (line 628) | status_t AaptDir::addDir(const String8& name, const sp<AaptDir>& dir)
  function status_t (line 666) | status_t AaptDir::addLeafFile(const String8& leafName, const sp<AaptFile...
  type dirent (line 698) | struct dirent
  function status_t (line 767) | status_t AaptDir::validate() const
  function String8 (line 845) | String8 AaptDir::getPrintableSource() const
  function status_t (line 865) | status_t AaptSymbols::applyJavaSymbols(const sp<AaptSymbols>& javaSymbols)
  function status_t (line 920) | status_t AaptAssets::addFile(const String8& name, const sp<AaptGroup>& f...
  type dirent (line 1171) | struct dirent
  function status_t (line 1335) | status_t AaptAssets::filter(Bundle* bundle)
  function status_t (line 1515) | status_t AaptAssets::applyJavaSymbols()
  function status_t (line 1547) | status_t AaptAssets::buildIncludedResources(Bundle* bundle)
  function status_t (line 1646) | status_t AaptAssets::addIncludedResources(const sp<AaptFile>& file)
  function ResTable (line 1653) | const ResTable& AaptAssets::getIncludedResources() const
  function AssetManager (line 1658) | AssetManager& AaptAssets::getAssetManager()
  function ResTable (line 1663) | const ResTable& AaptAssets::getBaselineResources() const
  function AssetManager (line 1668) | AssetManager& AaptAssets::getBaselineAssetManager()
  function valid_symbol_name (line 1713) | bool

FILE: atlas-aapt-old/frameworks/base/tools/aapt/AaptAssets.h
  type AaptLocaleValue (line 61) | struct AaptLocaleValue {
  function String8 (line 81) | String8 toDirName() const;
  function o (line 88) | inline bool operator<=(const AaptLocaleValue& o) const { return compare(...
  function o (line 89) | inline bool operator==(const AaptLocaleValue& o) const { return compare(...
  function o (line 90) | inline bool operator!=(const AaptLocaleValue& o) const { return compare(...
  function o (line 91) | inline bool operator>=(const AaptLocaleValue& o) const { return compare(...
  function o (line 92) | inline bool operator>(const AaptLocaleValue& o) const { return compare(o...
  function compare (line 104) | struct AaptGroupEntry
  function o (line 115) | inline bool operator<(const AaptGroupEntry& o) const { return compare(o)...
  function o (line 116) | inline bool operator<=(const AaptGroupEntry& o) const { return compare(o...
  function o (line 117) | inline bool operator==(const AaptGroupEntry& o) const { return compare(o...
  function o (line 118) | inline bool operator!=(const AaptGroupEntry& o) const { return compare(o...
  function o (line 119) | inline bool operator>=(const AaptGroupEntry& o) const { return compare(o...
  function o (line 120) | inline bool operator>(const AaptGroupEntry& o) const { return compare(o)...
  function String8 (line 125) | const String8 getVersionString() const { return AaptConfig::getVersion(m...
  function strictly_order_type (line 136) | inline int strictly_order_type(const AaptGroupEntry& lhs, const AaptGrou...
  function class (line 147) | class AaptFile : public RefBase
  function String8 (line 187) | String8 getPrintableSource() const;
  function class (line 210) | class AaptGroup : public RefBase
  function class (line 243) | class AaptDir : public RefBase
  function status_t (line 279) | status_t validate() const;
  function class (line 366) | class AaptSymbols : public RefBase
  function String16 (line 458) | const String16& getComment(const String8& name) const
  function String16 (line 460) | const String16& getTypeComment(const String8& name) const
  function AaptSymbolEntry (line 482) | const AaptSymbolEntry& get_symbol(const String8& symbol) const {
  function class (line 514) | class AaptAssets : public AaptDir
  function setSymbolsPrivatePackage (line 555) | void setSymbolsPrivatePackage(const String8& pkg) {
  function sp (line 576) | inline sp<AaptAssets> getOverlay() { return mOverlay; }
  function setOverlay (line 577) | inline void setOverlay(sp<AaptAssets>& overlay) { mOverlay = overlay; }
  function setResources (line 580) | inline void
  function sp (line 583) | inline sp<FilePathStore>& getFullResPaths() { return mFullResPaths; }
  function setFullResPaths (line 584) | inline void
  function sp (line 587) | inline sp<FilePathStore>& getFullAssetPaths() { return mFullAssetPaths; }
  function setFullAssetPaths (line 588) | inline void

FILE: atlas-aapt-old/frameworks/base/tools/aapt/AaptConfig.cpp
  type AaptConfig (line 29) | namespace AaptConfig {
    function parse (line 33) | bool parse(const String8& str, ConfigDescription* out) {
    function parseCommaSeparatedList (line 224) | bool parseCommaSeparatedList(const String8& str, std::set<ConfigDescri...
    function applyVersionForCompatibility (line 237) | void applyVersionForCompatibility(ConfigDescription* config) {
    function parseMcc (line 267) | bool parseMcc(const char* name, ResTable_config* out) {
    function parseMnc (line 297) | bool parseMnc(const char* name, ResTable_config* out) {
    function parseLayoutDirection (line 328) | bool parseLayoutDirection(const char* name, ResTable_config* out) {
    function parseScreenLayoutSize (line 349) | bool parseScreenLayoutSize(const char* name, ResTable_config* out) {
    function parseScreenLayoutLong (line 380) | bool parseScreenLayoutLong(const char* name, ResTable_config* out) {
    function parseOrientation (line 401) | bool parseOrientation(const char* name, ResTable_config* out) {
    function parseUiModeType (line 419) | bool parseUiModeType(const char* name, ResTable_config* out) {
    function parseUiModeNight (line 455) | bool parseUiModeNight(const char* name, ResTable_config* out) {
    function parseDensity (line 476) | bool parseDensity(const char* name, ResTable_config* out) {
    function parseTouchscreen (line 556) | bool parseTouchscreen(const char* name, ResTable_config* out) {
    function parseKeysHidden (line 574) | bool parseKeysHidden(const char* name, ResTable_config* out) {
    function parseKeyboard (line 599) | bool parseKeyboard(const char* name, ResTable_config* out) {
    function parseNavHidden (line 617) | bool parseNavHidden(const char* name, ResTable_config* out) {
    function parseNavigation (line 639) | bool parseNavigation(const char* name, ResTable_config* out) {
    function parseScreenSize (line 660) | bool parseScreenSize(const char* name, ResTable_config* out) {
    function parseSmallestScreenWidthDp (line 694) | bool parseSmallestScreenWidthDp(const char* name, ResTable_config* out) {
    function parseScreenWidthDp (line 718) | bool parseScreenWidthDp(const char* name, ResTable_config* out) {
    function parseScreenHeightDp (line 740) | bool parseScreenHeightDp(const char* name, ResTable_config* out) {
    function parseVersion (line 762) | bool parseVersion(const char* name, ResTable_config* out) {
    function String8 (line 789) | String8 getVersion(const ResTable_config& config) {
    function isSameExcept (line 793) | bool isSameExcept(const ResTable_config& a, const ResTable_config& b, ...

FILE: atlas-aapt-old/frameworks/base/tools/aapt/AaptConfig.h
  function namespace (line 28) | namespace AaptConfig {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/AaptUtil.cpp
  type AaptUtil (line 22) | namespace AaptUtil {
    function split (line 24) | Vector<String8> split(const String8& str, const char sep) {
    function splitAndLowerCase (line 42) | Vector<String8> splitAndLowerCase(const String8& str, const char sep) {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/AaptUtil.h
  function namespace (line 23) | namespace AaptUtil {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/AaptXml.cpp
  type AaptXml (line 24) | namespace AaptXml {
    function String8 (line 26) | static String8 getStringAttributeAtIndex(const ResXMLTree& tree, ssize...
    function getIntegerAttributeAtIndex (line 48) | static int32_t getIntegerAttributeAtIndex(const ResXMLTree& tree, ssiz...
    function indexOfAttribute (line 69) | ssize_t indexOfAttribute(const ResXMLTree& tree, uint32_t attrRes) {
    function String8 (line 79) | String8 getAttribute(const ResXMLTree& tree, const char* ns,
    function String8 (line 88) | String8 getAttribute(const ResXMLTree& tree, uint32_t attrRes, String8...
    function String8 (line 96) | String8 getResolvedAttribute(const ResTable& resTable, const ResXMLTre...
    function getIntegerAttribute (line 123) | int32_t getIntegerAttribute(const ResXMLTree& tree, const char* ns,
    function getIntegerAttribute (line 132) | int32_t getIntegerAttribute(const ResXMLTree& tree, uint32_t attrRes, ...
    function getResolvedIntegerAttribute (line 141) | int32_t getResolvedIntegerAttribute(const ResTable& resTable, const Re...
    function getResolvedResourceAttribute (line 163) | void getResolvedResourceAttribute(const ResTable& resTable, const ResX...

FILE: atlas-aapt-old/frameworks/base/tools/aapt/AaptXml.h
  function namespace (line 26) | namespace AaptXml {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ApkBuilder.cpp
  function status_t (line 30) | status_t ApkBuilder::createSplitForConfigs(const std::set<ConfigDescript...
  function status_t (line 59) | status_t ApkBuilder::addEntry(const String8& path, const sp<AaptFile>& f...
  function status_t (line 109) | status_t ApkSplit::addEntry(const String8& path, const sp<AaptFile>& fil...

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ApkBuilder.h
  function class (line 33) | class ApkBuilder : public android::RefBase {
  function class (line 70) | class ApkSplit : public OutputSet {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/Bundle.h
  type Command (line 33) | typedef enum Command {
  type PseudolocalizationMethod (line 49) | typedef enum PseudolocalizationMethod {
  function class (line 58) | class Bundle {
  function setCommand (line 86) | void setCommand(Command cmd) { mCmd = cmd; }
  function getVerbose (line 92) | bool getVerbose(void) const { return mVerbose; }
  function setVerbose (line 93) | void setVerbose(bool val) { mVerbose = val; }
  function getAndroidList (line 94) | bool getAndroidList(void) const { return mAndroidList; }
  function setAndroidList (line 95) | void setAndroidList(bool val) { mAndroidList = val; }
  function getForce (line 96) | bool getForce(void) const { return mForce; }
  function setForce (line 97) | void setForce(bool val) { mForce = val; }
  function setGrayscaleTolerance (line 98) | void setGrayscaleTolerance(int val) { mGrayscaleTolerance = val; }
  function getMakePackageDirs (line 100) | bool getMakePackageDirs(void) const { return mMakePackageDirs; }
  function setMakePackageDirs (line 101) | void setMakePackageDirs(bool val) { mMakePackageDirs = val; }
  function getUpdate (line 102) | bool getUpdate(void) const { return mUpdate; }
  function setUpdate (line 103) | void setUpdate(bool val) { mUpdate = val; }
  function getExtending (line 104) | bool getExtending(void) const { return mExtending; }
  function setExtending (line 105) | void setExtending(bool val) { mExtending = val; }
  function getRequireLocalization (line 106) | bool getRequireLocalization(void) const { return mRequireLocalization; }
  function setRequireLocalization (line 107) | void setRequireLocalization(bool val) { mRequireLocalization = val; }
  function getPseudolocalize (line 108) | short getPseudolocalize(void) const { return mPseudolocalize; }
  function setPseudolocalize (line 109) | void setPseudolocalize(short val) { mPseudolocalize = val; }
  function setWantUTF16 (line 110) | void setWantUTF16(bool val) { mWantUTF16 = val; }
  function getValues (line 111) | bool getValues(void) const { return mValues; }
  function setValues (line 112) | void setValues(bool val) { mValues = val; }
  function getIncludeMetaData (line 113) | bool getIncludeMetaData(void) const { return mIncludeMetaData; }
  function setIncludeMetaData (line 114) | void setIncludeMetaData(bool val) { mIncludeMetaData = val; }
  function getCompressionMethod (line 115) | int getCompressionMethod(void) const { return mCompressionMethod; }
  function setCompressionMethod (line 116) | void setCompressionMethod(int val) { mCompressionMethod = val; }
  function getJunkPath (line 117) | bool getJunkPath(void) const { return mJunkPath; }
  function setJunkPath (line 118) | void setJunkPath(bool val) { mJunkPath = val; }
  function setOutputAPKFile (line 120) | void setOutputAPKFile(const char* val) { mOutputAPKFile = val; }
  function setManifestPackageNameOverride (line 122) | void setManifestPackageNameOverride(const char * val) { mManifestPackage...
  function setInstrumentationPackageNameOverride (line 124) | void setInstrumentationPackageNameOverride(const char * val) { mInstrume...
  function getAutoAddOverlay (line 125) | bool getAutoAddOverlay() { return mAutoAddOverlay; }
  function setAutoAddOverlay (line 126) | void setAutoAddOverlay(bool val) { mAutoAddOverlay = val; }
  function getGenDependencies (line 127) | bool getGenDependencies() { return mGenDependencies; }
  function setGenDependencies (line 128) | void setGenDependencies(bool val) { mGenDependencies = val; }
  function getErrorOnFailedInsert (line 129) | bool getErrorOnFailedInsert() { return mErrorOnFailedInsert; }
  function setErrorOnFailedInsert (line 130) | void setErrorOnFailedInsert(bool val) { mErrorOnFailedInsert = val; }
  function getErrorOnMissingConfigEntry (line 131) | bool getErrorOnMissingConfigEntry() { return mErrorOnMissingConfigEntry; }
  function setErrorOnMissingConfigEntry (line 132) | void setErrorOnMissingConfigEntry(bool val) { mErrorOnMissingConfigEntry...
  function android (line 133) | const android::String8& getPlatformBuildVersionCode() { return mPlatform...
  function setPlatformBuildVersionCode (line 134) | void setPlatformBuildVersionCode(const android::String8& code) { mPlatfo...
  function android (line 135) | const android::String8& getPlatformBuildVersionName() { return mPlatform...
  function setPlatformBuildVersionName (line 136) | void setPlatformBuildVersionName(const android::String8& name) { mPlatfo...
  function getUTF16StringsOption (line 138) | bool getUTF16StringsOption() {
  function android (line 145) | const android::Vector<const char*>& getAssetSourceDirs() const { return ...
  function addAssetSourceDir (line 146) | void addAssetSourceDir(const char* dir) { mAssetSourceDirs.insertAt(dir,...
  function setCrunchedOutputDir (line 148) | void setCrunchedOutputDir(const char* dir) { mCrunchedOutputDir = dir; }
  function setProguardFile (line 150) | void setProguardFile(const char* file) { mProguardFile = file; }
  function setMainDexProguardFile (line 152) | void setMainDexProguardFile(const char* file) { mMainDexProguardFile = f...
  function android (line 153) | const android::Vector<const char*>& getResourceSourceDirs() const { retu...
  function addResourceSourceDir (line 154) | void addResourceSourceDir(const char* dir) { mResourceSourceDirs.insertA...
  function setAndroidManifestFile (line 156) | void setAndroidManifestFile(const char* file) { mAndroidManifestFile = f...
  function setPublicOutputFile (line 158) | void setPublicOutputFile(const char* file) { mPublicOutputFile = file; }
  function setRClassDir (line 160) | void setRClassDir(const char* dir) { mRClassDir = dir; }
  function addConfigurations (line 162) | void addConfigurations(const char* val) { if (mConfigurations.size() > 0...
  function setPreferredDensity (line 164) | void setPreferredDensity(const char* val) { mPreferredDensity = val; }
  function addSplitConfigurations (line 165) | void addSplitConfigurations(const char* val) { mPartialConfigurations.ad...
  function setResourceIntermediatesDir (line 168) | void setResourceIntermediatesDir(const char* dir) { mResourceIntermediat...
  function addPackageInclude (line 170) | void addPackageInclude(const char* file) { mPackageIncludes.add(android:...
  function setBaselinePackage (line 171) | void setBaselinePackage(const char* str) { mBaselinePackage = str; }
  function android (line 173) | const android::Vector<const char*>& getJarFiles() const { return mJarFil...
  function addJarFile (line 174) | void addJarFile(const char* file) { mJarFiles.add(file); }
  function android (line 175) | const android::Vector<const char*>& getNoCompressExtensions() const { re...
  function addNoCompressExtension (line 176) | void addNoCompressExtension(const char* ext) { mNoCompressExtensions.add...
  function setFeatureOfPackage (line 177) | void setFeatureOfPackage(const char* str) { mFeatureOfPackage = str; }
  function setFeatureAfterPackage (line 179) | void setFeatureAfterPackage(const char* str) { mFeatureAfterPackage.add(...
  function setManifestMinSdkVersion (line 183) | void setManifestMinSdkVersion(const char*  val) { mManifestMinSdkVersion...
  function setMinSdkVersion (line 185) | void setMinSdkVersion(const char*  val) { mMinSdkVersion = val; }
  function setTargetSdkVersion (line 187) | void setTargetSdkVersion(const char*  val) { mTargetSdkVersion = val; }
  function setMaxSdkVersion (line 189) | void setMaxSdkVersion(const char*  val) { mMaxSdkVersion = val; }
  function setVersionCode (line 191) | void setVersionCode(const char*  val) { mVersionCode = val; }
  function setVersionName (line 193) | void setVersionName(const char* val) { mVersionName = val; }
  function getReplaceVersion (line 194) | bool getReplaceVersion() { return mReplaceVersion; }
  function setReplaceVersion (line 195) | void setReplaceVersion(bool val) { mReplaceVersion = val; }
  function setCustomPackage (line 197) | void setCustomPackage(const char* val) { mCustomPackage = val; }
  function setExtraPackages (line 199) | void setExtraPackages(const char* val) { mExtraPackages = val; }
  function setMaxResVersion (line 201) | void setMaxResVersion(const char * val) { mMaxResVersion = val; }
  function setDebugMode (line 203) | void setDebugMode(bool val) { mDebugMode = val; }
  function setNonConstantId (line 205) | void setNonConstantId(bool val) { mNonConstantId = val; }
  function setProduct (line 207) | void setProduct(const char * val) { mProduct = val; }
  function setUseCrunchCache (line 208) | void setUseCrunchCache(bool val) { mUseCrunchCache = val; }
  function setOutputTextSymbols (line 211) | void setOutputTextSymbols(const char* val) { mOutputTextSymbols = val; }
  function setSingleCrunchInputFile (line 213) | void setSingleCrunchInputFile(const char* val) { mSingleCrunchInputFile ...
  function setSingleCrunchOutputFile (line 215) | void setSingleCrunchOutputFile(const char* val) { mSingleCrunchOutputFil...
  function setBuildSharedLibrary (line 217) | void setBuildSharedLibrary(bool val) { mBuildSharedLibrary = val; }
  function setTypeIdOffset (line 218) | void setTypeIdOffset(uint32_t val) { mTypeIdOffset = val; }
  function setFileSpec (line 226) | void setFileSpec(char* const argv[], int argc) {
  function getFileSpecCount (line 230) | int getFileSpecCount(void) const { return mArgc; }
  function eatArgs (line 232) | void eatArgs(int n) {
  function getPackageCount (line 244) | int getPackageCount(void) const { return mPackageCount; }
  function setPackageCount (line 245) | void setPackageCount(int val) { mPackageCount = val; }
  function isMinSdkAtLeast (line 252) | bool isMinSdkAtLeast(int desired) {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/CacheUpdater.h
  function class (line 49) | class SystemCacheUpdater : public CacheUpdater {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/Command.cpp
  function doVersion (line 40) | int doVersion(Bundle* bundle)
  function ZipFile (line 56) | ZipFile* openReadOnly(const char* fileName)
  function ZipFile (line 85) | ZipFile* openReadWrite(const char* fileName, bool okayToCreate)
  function calcPercent (line 126) | int calcPercent(long uncompressedLen, long compressedLen)
  function doList (line 142) | int doList(Bundle* bundle)
  function printResolvedResourceAttribute (line 263) | static void printResolvedResourceAttribute(const ResTable& resTable, con...
  function String8 (line 326) | String8 getComponentName(String8 &pkgName, String8 &componentName) {
  function printCompatibleScreens (line 340) | static void printCompatibleScreens(ResXMLTree& tree, String8* outError) {
  function printUsesPermission (line 381) | static void printUsesPermission(const String8& name, bool optional=false...
  function printUsesImpliedPermission (line 398) | static void printUsesImpliedPermission(const String8& name, const String...
  function getNfcAidCategories (line 404) | Vector<String8> getNfcAidCategories(AssetManager& assets, String8 xmlPat...
  function printComponentPresence (line 469) | static void printComponentPresence(const char* componentName) {
  type ImpliedFeature (line 477) | struct ImpliedFeature {
  type FeatureGroup (line 492) | struct FeatureGroup {
    method FeatureGroup (line 493) | FeatureGroup() : openGLESVersion(-1) {}
  function addImpliedFeature (line 511) | static void addImpliedFeature(KeyedVector<String8, ImpliedFeature>* impl...
  function printFeatureGroup (line 522) | static void printFeatureGroup(const FeatureGroup& grp,
  function addParentFeatures (line 569) | static void addParentFeatures(FeatureGroup* grp, const String8& name) {
  function doDump (line 593) | int doDump(Bundle* bundle)
  function doAdd (line 2078) | int doAdd(Bundle* bundle)
  function doRemove (line 2149) | int doRemove(Bundle* bundle)
  function status_t (line 2200) | static status_t addResourcesToBuilder(const sp<AaptDir>& dir, const sp<A...
  function String8 (line 2238) | static String8 buildApkName(const String8& original, const sp<ApkSplit>&...
  function doPackage (line 2258) | int doPackage(Bundle* bundle)
  function doCrunch (line 2507) | int doCrunch(Bundle* bundle)
  function doSingleCrunch (line 2523) | int doSingleCrunch(Bundle* bundle)
  function runInDaemonMode (line 2539) | int runInDaemonMode(Bundle* bundle) {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ConfigDescription.h
  type ConfigDescription (line 26) | struct ConfigDescription
  function o (line 50) | inline bool operator<=(const ConfigDescription& o) const { return compar...
  function o (line 51) | inline bool operator==(const ConfigDescription& o) const { return compar...
  function o (line 52) | inline bool operator!=(const ConfigDescription& o) const { return compar...
  function o (line 53) | inline bool operator>=(const ConfigDescription& o) const { return compar...
  function o (line 54) | inline bool operator>(const ConfigDescription& o) const { return compare...

FILE: atlas-aapt-old/frameworks/base/tools/aapt/CrunchCache.h
  function class (line 29) | class CrunchCache {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/DirectoryWalker.h
  function class (line 25) | class DirectoryWalker {
  function class (line 53) | class SystemDirectoryWalker : public DirectoryWalker {
  function virtual (line 67) | virtual bool openDir(const char* path) {
  function dirent (line 73) | dirent* nextEntry() {
  function stat (line 85) | stat*   entryStats() {
  function virtual (line 88) | virtual void closeDir() {
  function virtual (line 91) | virtual DirectoryWalker* clone() {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/FileFinder.cpp
  function isDirectory (line 23) | bool isDirectory(const char* filename) {
  function isFile (line 33) | bool isFile(const char* filename) {
  type dirent (line 54) | struct dirent
  type stat (line 80) | struct stat

FILE: atlas-aapt-old/frameworks/base/tools/aapt/FileFinder.h
  function class (line 23) | class FileFinder {
  function class (line 32) | class SystemFileFinder : public FileFinder {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/Images.cpp
  function png_write_aapt_file (line 19) | static void
  function png_flush_aapt_file (line 30) | static void
  type image_info (line 36) | struct image_info
    method image_info (line 38) | image_info() : rows(NULL), is9Patch(false),
  function log_warning (line 92) | static void log_warning(png_structp png_ptr, png_const_charp warning_mes...
  function read_png (line 98) | static void read_png(const char* imageName,
  function tick_type (line 182) | static int tick_type(png_bytep p, bool transparent, const char** outError)
  function status_t (line 234) | static status_t get_horizontal_ticks(
  function status_t (line 283) | static status_t get_vertical_ticks(
  function status_t (line 332) | static status_t get_horizontal_layout_bounds_ticks(
  function status_t (line 370) | static status_t get_vertical_layout_bounds_ticks(
  function find_max_opacity (line 408) | static void find_max_opacity(png_byte** rows,
  function max_alpha_over_row (line 427) | static uint8_t max_alpha_over_row(png_byte* row, int startX, int endX)
  function max_alpha_over_col (line 437) | static uint8_t max_alpha_over_col(png_byte** rows, int offsetX, int star...
  function get_outline (line 447) | static void get_outline(image_info* image)
  function get_color (line 506) | static uint32_t get_color(
  function select_patch (line 536) | static void select_patch(
  function get_color (line 555) | static uint32_t get_color(image_info* image, int hpatch, int vpatch)
  function status_t (line 571) | static status_t do_9patch(const char* imageName, image_info* image)
  function checkNinePatchSerialization (line 819) | static void checkNinePatchSerialization(Res_png_9patch* inPatch,  void* ...
  function dump_image (line 845) | static void dump_image(int w, int h, png_bytepp rows, int color_type)
  function analyze_image (line 897) | static void analyze_image(const char *imageName, image_info &imageInfo, ...
  function write_png (line 1067) | static void write_png(const char* imageName,
  function status_t (line 1239) | status_t preProcessImage(const Bundle* bundle, const sp<AaptAssets>& ass...
  function status_t (line 1359) | status_t preProcessImageToCache(const Bundle* bundle, const String8& sou...
  function status_t (line 1486) | status_t postProcessImage(const Bundle* bundle, const sp<AaptAssets>& as...

FILE: atlas-aapt-old/frameworks/base/tools/aapt/IndentPrinter.h
  function class (line 4) | class IndentPrinter {
  function print (line 20) | void print(const char* fmt, ...) {
  function println (line 28) | void println(const char* fmt, ...) {
  function println (line 38) | void println() {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/Main.cpp
  function convertPath (line 30) | void convertPath(char *path) {
  function usage (line 43) | void usage(void)
  function handleCommand (line 231) | int handleCommand(Bundle* bundle)
  function main (line 257) | int main(int argc, char* const argv[])

FILE: atlas-aapt-old/frameworks/base/tools/aapt/OutputSet.h
  function class (line 27) | class OutputEntry {
  function class (line 49) | class OutputSet : public virtual android::RefBase {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/Package.cpp
  function status_t (line 52) | status_t writeAPK(Bundle* bundle, const String8& outputFile, const sp<Ou...
  function processAssets (line 218) | ssize_t processAssets(Bundle* bundle, ZipFile* zip, const sp<const Outpu...
  function processFile (line 245) | bool processFile(Bundle* bundle, ZipFile* zip,
  function okayToCompress (line 366) | bool okayToCompress(Bundle* bundle, const String8& pathName)
  function endsWith (line 395) | bool endsWith(const char* haystack, const char* needle)
  function processJarFile (line 403) | ssize_t processJarFile(ZipFile* jar, ZipFile* out)
  function processJarFiles (line 428) | ssize_t processJarFiles(Bundle* bundle, ZipFile* zip)

FILE: atlas-aapt-old/frameworks/base/tools/aapt/Resource.cpp
  class PackageInfo (line 37) | class PackageInfo
    method PackageInfo (line 40) | PackageInfo()
  function String8 (line 54) | String8 parseResourceName(const String8& leaf)
  class ResourceDirIterator (line 78) | class ResourceDirIterator
    method ResourceDirIterator (line 81) | ResourceDirIterator(const sp<ResourceTypeSet>& set, const String8& res...
    method String8 (line 90) | inline const String8& getBaseName() const { return mBaseName; }
    method String8 (line 91) | inline const String8& getLeafName() const { return mLeafName; }
    method String8 (line 92) | inline String8 getPath() const { return mPath; }
    method ResTable_config (line 93) | inline const ResTable_config& getParams() const { return mParams; }
    method next (line 99) | ssize_t next()
  class AnnotationProcessor (line 170) | class AnnotationProcessor {
    method AnnotationProcessor (line 172) | AnnotationProcessor() : mDeprecated(false), mSystemApi(false) { }
    method preprocessComment (line 174) | void preprocessComment(String8& comment) {
    method printAnnotations (line 185) | void printAnnotations(FILE* fp, const char* indentStr) {
  function isValidResourceType (line 203) | bool isValidResourceType(const String8& type)
  function status_t (line 212) | static status_t parsePackage(Bundle* bundle, const sp<AaptAssets>& assets,
  function status_t (line 280) | static status_t makeFileResources(Bundle* bundle, const sp<AaptAssets>& ...
  class PreProcessImageWorkUnit (line 324) | class PreProcessImageWorkUnit : public WorkQueue::WorkUnit {
    method PreProcessImageWorkUnit (line 326) | PreProcessImageWorkUnit(const Bundle* bundle, const sp<AaptAssets>& as...
    method run (line 331) | virtual bool run() {
  function status_t (line 346) | static status_t preProcessImages(const Bundle* bundle, const sp<AaptAsse...
  function collect_files (line 374) | static void collect_files(const sp<AaptDir>& dir,
  function collect_files (line 423) | static void collect_files(const sp<AaptAssets>& ass,
  function validateAttr (line 447) | static int validateAttr(const String8& path, const ResTable& table,
  function checkForIds (line 548) | static void checkForIds(const String8& path, ResXMLParser& parser)
  function applyFileOverlay (line 563) | static bool applyFileOverlay(Bundle *bundle,
  function addTagAttribute (line 680) | bool addTagAttribute(const sp<XMLNode>& node, const char* ns8,
  function addTagAttribute (line 726) | bool addTagAttribute(const sp<XMLNode>& node, const char* ns8,
  function fullyQualifyClassName (line 732) | static void fullyQualifyClassName(const String8& package, sp<XMLNode> node,
  function status_t (line 760) | status_t massageManifest(Bundle* bundle, sp<XMLNode> root)
  function getPlatformAssetCookie (line 914) | static int32_t getPlatformAssetCookie(const AssetManager& assets) {
  function extractPlatformBuildVersion (line 942) | static ssize_t extractPlatformBuildVersion(ResXMLTree& tree, Bundle* bun...
  function extractPlatformBuildVersion (line 988) | static ssize_t extractPlatformBuildVersion(AssetManager& assets, Bundle*...
  function status_t (line 1022) | status_t updatePreProcessedCache(Bundle* bundle)
  function status_t (line 1051) | status_t generateAndroidManifestForSplit(Bundle* bundle, const sp<AaptAs...
  function status_t (line 1100) | status_t buildResources(Bundle* bundle, const sp<AaptAssets>& assets, sp...
  function String8 (line 1919) | static String8 flattenSymbol(const String8& symbol) {
  function String8 (line 1936) | static String8 getSymbolPackage(const String8& symbol, const sp<AaptAsse...
  function String8 (line 1944) | static String8 getSymbolName(const String8& symbol) {
  function String16 (line 1952) | static String16 getAttributeComment(const sp<AaptAssets>& assets,
  function status_t (line 1972) | static status_t writeResourceLoadedCallbackForLayoutClasses(
  function status_t (line 2001) | static status_t writeResourceLoadedCallback(
  function status_t (line 2043) | static status_t writeLayoutClasses(
  function status_t (line 2295) | static status_t writeTextLayoutClasses(
  function status_t (line 2398) | static status_t writeSymbolClass(
  function status_t (line 2528) | static status_t writeTextSymbolClass(
  function status_t (line 2569) | status_t writeResourceSymbols(Bundle* bundle, const sp<AaptAssets>& assets,
  class ProguardKeepSet (line 2672) | class ProguardKeepSet
  function addProguardKeepRule (line 2690) | void
  function addProguardKeepMethodRule (line 2724) | void
  function status_t (line 2741) | status_t
  type NamespaceAttributePair (line 2862) | struct NamespaceAttributePair {
    method NamespaceAttributePair (line 2866) | NamespaceAttributePair(const char* n, const char* a) : ns(n), attr(a) {}
    method NamespaceAttributePair (line 2867) | NamespaceAttributePair() : ns(NULL), attr(NULL) {}
  function status_t (line 2870) | status_t
  function addTagAttrPair (line 2949) | static void addTagAttrPair(KeyedVector<String8, Vector<NamespaceAttribut...
  function status_t (line 2963) | status_t
  function status_t (line 3023) | status_t
  function status_t (line 3048) | status_t
  function status_t (line 3073) | status_t
  function status_t (line 3093) | status_t writePathsToFile(const sp<FilePathStore>& files, FILE* fp)
  function status_t (line 3104) | status_t

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ResourceFilter.cpp
  function status_t (line 11) | status_t
  function status_t (line 89) | status_t

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ResourceFilter.h
  function class (line 21) | class ResourceFilter : public virtual android::RefBase {
  function class (line 29) | class WeakResourceFilter : public ResourceFilter {
  function class (line 78) | class StrongResourceFilter : public ResourceFilter {
  function class (line 107) | class InverseResourceFilter : public ResourceFilter {
  function class (line 123) | class AndResourceFilter : public ResourceFilter {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ResourceIdCache.cpp
  type CacheEntry (line 23) | struct CacheEntry {
    method CacheEntry (line 28) | CacheEntry() {}
    method CacheEntry (line 29) | CacheEntry(const android::String16& name, uint32_t resId) : hashedName...
  function hashround (line 36) | static inline uint32_t hashround(uint32_t hash, int c) {
  function hash (line 40) | static uint32_t hash(const android::String16& hashableString) {
  type android (line 47) | namespace android {
    function String16 (line 49) | static inline String16 makeHashableName(const android::String16& package,

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ResourceIdCache.h
  function namespace (line 11) | namespace android {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ResourceTable.cpp
  function status_t (line 22) | status_t compileXmlFile(const Bundle* bundle,
  function status_t (line 37) | status_t compileXmlFile(const Bundle* bundle,
  function status_t (line 53) | status_t compileXmlFile(const Bundle* bundle,
  type flag_entry (line 116) | struct flag_entry
  function parse_flags (line 182) | static uint32_t parse_flags(const char16_t* str, size_t len,
  function String16 (line 223) | static String16 mayOrMust(int type, int flags)
  function appendTypeInfo (line 232) | static void appendTypeInfo(ResourceTable* outTable, const String16& pkg,
  type PendingAttribute (line 257) | struct PendingAttribute
    method PendingAttribute (line 268) | PendingAttribute(String16 _package, const sp<AaptFile>& in,
    method status_t (line 279) | status_t createIfNeeded(ResourceTable* outTable)
  function status_t (line 315) | static status_t compileAttribute(const sp<AaptFile>& in,
  function localeIsDefined (line 571) | bool localeIsDefined(const ResTable_config& config)
  function status_t (line 576) | status_t parseAndAddBag(Bundle* bundle,
  function isInProductList (line 624) | bool isInProductList(const String16& needle, const String16& haystack) {
  type type_ident_pair_t (line 651) | struct type_ident_pair_t {
    method type_ident_pair_t (line 655) | type_ident_pair_t() { }
    method type_ident_pair_t (line 656) | type_ident_pair_t(const String16& t, const String16& i) : type(t), ide...
    method type_ident_pair_t (line 657) | type_ident_pair_t(const type_ident_pair_t& o) : type(o.type), ident(o....
  function status_t (line 671) | status_t parseAndAddEntry(Bundle* bundle,
  function status_t (line 761) | status_t compileResourceFile(Bundle* bundle,
  function findLargestTypeIdForPackage (line 1759) | static uint32_t findLargestTypeIdForPackage(const ResTable& table, const...
  function status_t (line 1770) | status_t ResourceTable::addIncludedResources(Bundle* bundle, const sp<Aa...
  function status_t (line 1836) | status_t ResourceTable::addMapping(const SourcePos& sourcePos,
  function status_t (line 1865) | status_t ResourceTable::addPublic(const SourcePos& sourcePos,
  function status_t (line 1889) | status_t ResourceTable::addEntry(const SourcePos& sourcePos,
  function status_t (line 1923) | status_t ResourceTable::startBag(const SourcePos& sourcePos,
  function status_t (line 1983) | status_t ResourceTable::addBag(const SourcePos& sourcePos,
  function status_t (line 2598) | status_t ResourceTable::assignResourceIds(Bundle *bundle)
  function status_t (line 2723) | status_t ResourceTable::addSymbols(const sp<AaptSymbols>& outSymbols) {
  function status_t (line 2791) | status_t
  function status_t (line 2873) | status_t ResourceTable::flatten(Bundle* bundle, const sp<const ResourceF...
  function status_t (line 3364) | status_t ResourceTable::flattenLibraryTable(const sp<AaptFile>& dest, co...
  function status_t (line 3515) | status_t ResourceTable::Entry::makeItABag(const SourcePos& sourcePos)
  function status_t (line 3531) | status_t ResourceTable::Entry::setItem(const SourcePos& sourcePos,
  function status_t (line 3566) | status_t ResourceTable::Entry::addToBag(const SourcePos& sourcePos,
  function status_t (line 3600) | status_t ResourceTable::Entry::removeFromBag(const String16& key) {
  function status_t (line 3611) | status_t ResourceTable::Entry::emptyBag(const SourcePos& sourcePos)
  function status_t (line 3622) | status_t ResourceTable::Entry::generateAttributes(ResourceTable* table,
  function status_t (line 3668) | status_t ResourceTable::Entry::assignResourceIds(ResourceTable* table,
  function status_t (line 3716) | status_t ResourceTable::Entry::prepareFlatten(StringPool* strings, Resou...
  function status_t (line 3749) | status_t ResourceTable::Entry::remapStringValue(StringPool* strings)
  function status_t (line 3880) | status_t ResourceTable::Type::addMapping(const SourcePos& sourcePos,
  function status_t (line 3930) | status_t ResourceTable::Type::addPublic(const SourcePos& sourcePos,
  function status_t (line 4094) | status_t ResourceTable::Type::applyMappingEntryOrder()
  function status_t (line 4200) | status_t ResourceTable::Type::applyPublicEntryOrder()
  function status_t (line 4308) | status_t ResourceTable::Package::setTypeStrings(const sp<AaptFile>& data)
  function status_t (line 4322) | status_t ResourceTable::Package::setKeyStrings(const sp<AaptFile>& data)
  function status_t (line 4336) | status_t ResourceTable::Package::setStrings(const sp<AaptFile>& data,
  function status_t (line 4358) | status_t ResourceTable::Package::applyPublicTypeOrder()
  function NOISY (line 4588) | NOISY(
  function isMinSdkVersionLOrAbove (line 4622) | static bool isMinSdkVersionLOrAbove(const Bundle* bundle) {
  function status_t (line 4680) | status_t ResourceTable::modifyForCompat(const Bundle* bundle) {
  function status_t (line 4788) | status_t ResourceTable::modifyForCompat(const Bundle* bundle,

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ResourceTable.h
  type AccessorCookie (line 67) | struct AccessorCookie
  function size (line 199) | size_t size() const;
  function setCurrentXmlPos (line 280) | void setCurrentXmlPos(const SourcePos& pos) { mCurrentXmlPos = pos; }
  function class (line 282) | class Item {
  function class (line 319) | class Entry : public RefBase {
  function class (line 396) | class ConfigList : public RefBase {
  function class (line 436) | class Public {
  function class (line 460) | class Type : public RefBase {
  function setIndex (line 492) | void setIndex(int32_t index) { mIndex = index; }
  function class (line 520) | class Package : public RefBase {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/SourcePos.cpp
  type ErrorPos (line 11) | struct ErrorPos
    type Level (line 13) | enum Level {
  function ErrorPos (line 55) | ErrorPos&
    type Level (line 13) | enum Level {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/SourcePos.h
  function class (line 9) | class SourcePos

FILE: atlas-aapt-old/frameworks/base/tools/aapt/StringPool.cpp
  function strcpy16_htod (line 24) | void strcpy16_htod(uint16_t* dst, const uint16_t* src)
  function printStringPool (line 34) | void printStringPool(const ResStringPool* pool)
  function String8 (line 68) | String8 StringPool::entry::makeConfigsString() const {
  function status_t (line 190) | status_t StringPool::addStyleSpan(size_t idx, const String16& name,
  function status_t (line 200) | status_t StringPool::addStyleSpans(size_t idx, const Vector<entry_style_...
  function status_t (line 212) | status_t StringPool::addStyleSpan(size_t idx, const entry_style_span& span)
  function status_t (line 371) | status_t StringPool::writeStringBlock(const sp<AaptFile>& pool)

FILE: atlas-aapt-old/frameworks/base/tools/aapt/StringPool.h
  function class (line 38) | class StringPool
  type entry_style_span (line 67) | struct entry_style_span {
  type entry_style (line 72) | struct entry_style {
  function mapOriginalPosToNewPos (line 114) | size_t mapOriginalPosToNewPos(size_t originalPos) const {
  function namespace (line 176) | namespace android {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/WorkQueue.cpp
  type android (line 23) | namespace android {
    function status_t (line 38) | status_t WorkQueue::schedule(WorkUnit* workUnit, size_t backlog) {
    function status_t (line 68) | status_t WorkQueue::cancel() {
    function status_t (line 74) | status_t WorkQueue::cancelLocked() {
    function status_t (line 93) | status_t WorkQueue::finish() {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/WorkQueue.h
  function namespace (line 24) | namespace android {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/XMLNode.cpp
  function isWhitespace (line 40) | bool isWhitespace(const char16_t* str)
  function String16 (line 53) | String16 getNamespaceResourcePackage(String16 appPackage, String16 names...
  function status_t (line 79) | status_t hasSubstitutionErrors(const char* fileName,
  function status_t (line 184) | status_t parseStyledString(Bundle* bundle,
  type namespace_entry (line 410) | struct namespace_entry {
  function String8 (line 415) | static String8 make_prefix(int depth)
  function String8 (line 425) | static String8 build_namespace(const Vector<namespace_entry>& namespaces,
  function printXMLBlock (line 444) | void printXMLBlock(ResXMLTree* block)
  function status_t (line 551) | status_t parseXMLResource(const sp<AaptFile>& file, ResXMLTree* outTree,
  function String16 (line 664) | const String16& XMLNode::getNamespacePrefix() const
  function String16 (line 669) | const String16& XMLNode::getNamespaceUri() const
  function String16 (line 674) | const String16& XMLNode::getElementNamespace() const
  function String16 (line 679) | const String16& XMLNode::getElementName() const
  function String8 (line 689) | const String8& XMLNode::getFilename() const
  function String16 (line 726) | const String16& XMLNode::getCData() const
  function String16 (line 731) | const String16& XMLNode::getComment() const
  function status_t (line 778) | status_t XMLNode::addChild(const sp<XMLNode>& child)
  function status_t (line 789) | status_t XMLNode::insertChildAt(const sp<XMLNode>& child, size_t index)
  function status_t (line 800) | status_t XMLNode::addAttribute(const String16& ns, const String16& name,
  function status_t (line 820) | status_t XMLNode::removeAttribute(size_t index)
  function status_t (line 863) | status_t XMLNode::appendChars(const String16& chars)
  function status_t (line 873) | status_t XMLNode::appendComment(const String16& comment)
  function status_t (line 950) | status_t XMLNode::parseValues(const sp<AaptAssets>& assets,
  function status_t (line 997) | status_t XMLNode::assignResourceIds(const sp<AaptAssets>& assets,
  function status_t (line 1079) | status_t XMLNode::flatten(const sp<AaptFile>& dest,
  function splitName (line 1201) | static void splitName(const char* name, String16* outNs, String16* outName)
  function status_t (line 1328) | status_t XMLNode::collect_strings(StringPool* dest, Vector<uint32_t>* ou...
  function status_t (line 1383) | status_t XMLNode::collect_attr_strings(StringPool* outPool,
  function status_t (line 1435) | status_t XMLNode::collect_resid_strings(StringPool* outPool,
  function status_t (line 1449) | status_t XMLNode::flatten_node(const StringPool& strings, const sp<AaptF...

FILE: atlas-aapt-old/frameworks/base/tools/aapt/XMLNode.h
  function class (line 37) | class XMLNode : public RefBase
  function Vector (line 95) | const Vector<attribute_entry>& getAttributes() const;
  type ParseState (line 148) | struct ParseState

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ZipEntry.cpp
  function status_t (line 39) | status_t ZipEntry::initFromCDE(FILE* fp)
  function status_t (line 144) | status_t ZipEntry::initFromExternal(const ZipFile* pZipFile,
  function status_t (line 198) | status_t ZipEntry::addPadding(int padding)
  function time_t (line 338) | time_t ZipEntry::getModWhen(void) const
  type tm (line 360) | struct tm
  type tm (line 365) | struct tm
  function status_t (line 402) | status_t ZipEntry::LocalFileHeader::read(FILE* fp)
  function status_t (line 469) | status_t ZipEntry::LocalFileHeader::write(FILE* fp)
  function status_t (line 536) | status_t ZipEntry::CentralDirEntry::read(FILE* fp)
  function status_t (line 627) | status_t ZipEntry::CentralDirEntry::write(FILE* fp)

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ZipEntry.h
  function namespace (line 30) | namespace android {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ZipFile.cpp
  function status_t (line 46) | static status_t errnoToStatus(int err)
  function status_t (line 59) | status_t ZipFile::open(const char* zipFileName, int flags)
  function ZipEntry (line 135) | ZipEntry* ZipFile::getEntryByIndex(int idx) const
  function ZipEntry (line 146) | ZipEntry* ZipFile::getEntryByName(const char* fileName) const
  function status_t (line 204) | status_t ZipFile::readCentralDir(void)
  function status_t (line 358) | status_t ZipFile::addCommon(const char* fileName, const void* data, size...
  function status_t (line 539) | status_t ZipFile::add(const ZipFile* pSourceZip, const ZipEntry* pSource...
  function status_t (line 646) | status_t ZipFile::copyFpToFp(FILE* dstFp, FILE* srcFp, unsigned long* pC...
  function status_t (line 676) | status_t ZipFile::copyDataToFp(FILE* dstFp,
  function status_t (line 701) | status_t ZipFile::copyPartialFpToFp(FILE* dstFp, FILE* srcFp, long length,
  function status_t (line 743) | status_t ZipFile::compressFpToFp(FILE* dstFp, FILE* srcFp,
  function status_t (line 878) | status_t ZipFile::remove(ZipEntry* pEntry)
  function status_t (line 897) | status_t ZipFile::flush(void)
  function status_t (line 950) | status_t ZipFile::crunchArchive(void)
  function status_t (line 1049) | status_t ZipFile::filemove(FILE* fp, off_t dst, off_t src, size_t n)
  function time_t (line 1102) | time_t ZipFile::getModTime(int fd)
  function status_t (line 1220) | status_t ZipFile::EndOfCentralDir::readBuf(const unsigned char* buf, int...
  function status_t (line 1262) | status_t ZipFile::EndOfCentralDir::write(FILE* fp)

FILE: atlas-aapt-old/frameworks/base/tools/aapt/ZipFile.h
  function namespace (line 30) | namespace android {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/printapk.cpp
  function usage (line 12) | static int
  function main (line 24) | int

FILE: atlas-aapt-old/frameworks/base/tools/aapt/pseudolocalize.cpp
  function is_possible_normal_placeholder_end (line 81) | static bool
  function String16 (line 109) | String16
  function String16 (line 136) | String16
  function String16 (line 244) | String16

FILE: atlas-aapt-old/frameworks/base/tools/aapt/qsort_r_compat.c
  function qsort_r_compat (line 32) | void qsort_r_compat(void* base, size_t nel, size_t width, void* thunk,
  type compar_data (line 43) | struct compar_data {
  function compar_wrapper (line 48) | static int compar_wrapper(const void* a, const void* b, void* data) {
  function qsort_r_compat (line 53) | void qsort_r_compat(void* base, size_t nel, size_t width, void* thunk,
  type compar_data (line 71) | struct compar_data {
  function compar_wrapper (line 76) | static int compar_wrapper(const void* a, const void* b) {
  function qsort_r_compat (line 81) | void qsort_r_compat(void* base, size_t nel, size_t width, void* thunk,

FILE: atlas-aapt-old/frameworks/base/tools/aapt/tests/AaptConfig_test.cpp
  function TestParse (line 26) | static ::testing::AssertionResult TestParse(const String8& input, Config...
  function TestParse (line 33) | static ::testing::AssertionResult TestParse(const char* input, ConfigDes...
  function TEST (line 37) | TEST(AaptConfigTest, ParseFailWhenQualifiersAreOutOfOrder) {
  function TEST (line 43) | TEST(AaptConfigTest, ParseFailWhenQualifiersAreNotMatched) {
  function TEST (line 47) | TEST(AaptConfigTest, ParseFailWhenQualifiersHaveTrailingDash) {
  function TEST (line 51) | TEST(AaptConfigTest, ParseBasicQualifiers) {
  function TEST (line 65) | TEST(AaptConfigTest, ParseLocales) {
  function TEST (line 71) | TEST(AaptConfigTest, ParseQualifierAddedInApi13) {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/tests/AaptGroupEntry_test.cpp
  function TestParse (line 26) | static ::testing::AssertionResult TestParse(AaptGroupEntry& entry, const...
  function TestParse (line 34) | static ::testing::AssertionResult TestParse(AaptGroupEntry& entry, const...
  function TEST (line 39) | TEST(AaptGroupEntryTest, ParseNoQualifier) {
  function TEST (line 46) | TEST(AaptGroupEntryTest, ParseCorrectType) {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/tests/CrunchCache_test.cpp
  function expectEqual (line 18) | void expectEqual(int got, int expected, const char* desc) {
  function main (line 25) | int main() {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/tests/FileFinder_test.cpp
  function main (line 23) | int main()

FILE: atlas-aapt-old/frameworks/base/tools/aapt/tests/MockCacheUpdater.h
  function class (line 12) | class MockCacheUpdater : public CacheUpdater {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/tests/MockDirectoryWalker.h
  function class (line 22) | class StringDirectoryWalker : public DirectoryWalker {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/tests/MockFileFinder.h
  function class (line 16) | class MockFileFinder : public FileFinder {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/tests/ResourceFilter_test.cpp
  function TEST (line 30) | TEST(WeakResourceFilterTest, EmptyFilterMatchesAnything) {
  function TEST (line 45) | TEST(WeakResourceFilterTest, MatchesConfigWithUnrelatedAxis) {
  function TEST (line 55) | TEST(WeakResourceFilterTest, MatchesConfigWithSameValueAxis) {
  function TEST (line 66) | TEST(WeakResourceFilterTest, MatchesConfigWithSameValueAxisAndOtherUnrel...
  function TEST (line 78) | TEST(WeakResourceFilterTest, MatchesConfigWithOneMatchingAxis) {
  function TEST (line 89) | TEST(WeakResourceFilterTest, DoesNotMatchConfigWithDifferentValueAxis) {
  function TEST (line 100) | TEST(WeakResourceFilterTest, DoesNotMatchWhenOneQualifierIsExplicitlyNot...
  function TEST (line 113) | TEST(WeakResourceFilterTest, MatchesSmallestWidthWhenSmaller) {
  function TEST (line 126) | TEST(WeakResourceFilterTest, MatchesConfigWithSameLanguageButNoRegionSpe...
  function TEST (line 137) | TEST(WeakResourceFilterTest, ParsesStandardLocaleOnlyString) {
  function TEST (line 142) | TEST(WeakResourceFilterTest, IgnoresVersion) {
  function TEST (line 154) | TEST(WeakResourceFilterTest, MatchesConfigWithRegion) {
  function TEST (line 166) | TEST(StrongResourceFilterTest, MatchesDensities) {
  function TEST (line 181) | TEST(StrongResourceFilterTest, MatchOnlyMdpiAndExcludeAllOthers) {

FILE: atlas-aapt-old/frameworks/base/tools/aapt/tests/TestHelper.h
  function namespace (line 22) | namespace android {

FILE: atlas-aapt/bionic/libc/include/android/dlext.h
  type android_namespace_t (line 119) | struct android_namespace_t
  type android_dlextinfo (line 121) | typedef struct {

FILE: atlas-aapt/bionic/libc/include/android/legacy_signal_inlines.h
  function sigismember (line 39) | static __inline int sigismember(sigset_t *set, int signum) {
  function sigaddset (line 50) | static __inline int sigaddset(sigset_t *set, int signum) {
  function sigdelset (line 62) | static __inline int sigdelset(sigset_t *set, int signum) {
  function sigemptyset (line 74) | static __inline int sigemptyset(sigset_t *set) {
  function sigfillset (line 83) | static __inline int sigfillset(sigset_t *set) {
  function sighandler_t (line 92) | static __inline sighandler_t signal(int s, sighandler_t f) {

FILE: atlas-aapt/bionic/libc/include/android/legacy_stdlib_inlines.h
  function __BEGIN_DECLS (line 34) | __BEGIN_DECLS
  function atof (line 40) | static __inline double atof(const char *nptr) { return (strtod(nptr, NUL...
  function abs (line 42) | static __inline int abs(int __n) { return (__n < 0) ? -__n : __n; }
  function labs (line 44) | static __inline long labs(long __n) { return (__n < 0L) ? -__n : __n; }
  function llabs (line 46) | static __inline long long llabs(long long __n) {
  function rand (line 50) | static __inline int rand(void) { return (int)lrand48(); }
  function srand (line 52) | static __inline void srand(unsigned int __s) { srand48(__s); }
  function random (line 54) | static __inline long random(void) { return lrand48(); }
  function srandom (line 56) | static __inline void srandom(unsigned int __s) { srand48(__s); }
  function grantpt (line 58) | static __inline int grantpt(int __fd __attribute((unused))) {

FILE: atlas-aapt/bionic/libc/include/android/legacy_sys_atomics_inlines.h
  function __ATOMIC_INLINE__ (line 49) | __ATOMIC_INLINE__ int __atomic_cmpxchg(int old, int _new, volatile int *...
  function __ATOMIC_INLINE__ (line 54) | __ATOMIC_INLINE__ int __atomic_swap(int _new, volatile int *ptr) {
  function __ATOMIC_INLINE__ (line 62) | __ATOMIC_INLINE__ int __atomic_dec(volatile int *ptr) {
  function __ATOMIC_INLINE__ (line 66) | __ATOMIC_INLINE__ int __atomic_inc(volatile int *ptr) {

FILE: atlas-aapt/bionic/libc/include/android/legacy_sys_stat_inlines.h
  function __BEGIN_DECLS (line 34) | __BEGIN_DECLS

FILE: atlas-aapt/bionic/libc/include/android/legacy_termios_inlines.h
  function __BEGIN_DECLS (line 37) | __BEGIN_DECLS
  function tcsetattr (line 43) | static __inline int tcsetattr(int fd, int __opt, const struct termios *s) {
  function tcflow (line 47) | static __inline int tcflow(int fd, int action) {
  function tcflush (line 51) | static __inline int tcflush(int fd, int __queue) {
  function pid_t (line 55) | static __inline pid_t tcgetsid(int fd) {
  function tcsendbreak (line 60) | static __inline int tcsendbreak(int fd, int __duration) {
  function speed_t (line 64) | static __inline speed_t cfgetospeed(const struct termios *s) {
  function cfsetospeed (line 68) | static __inline int cfsetospeed(struct termios *s, speed_t speed) {
  function speed_t (line 73) | static __inline speed_t cfgetispeed(const struct termios *s) {
  function cfsetispeed (line 77) | static __inline int cfsetispeed(struct termios *s, speed_t speed) {
  function cfmakeraw (line 82) | static __inline void cfmakeraw(struct termios *s) {

FILE: atlas-aapt/bionic/libc/include/ar.h
  type ar_hdr (line 55) | struct ar_hdr {

FILE: atlas-aapt/bionic/libc/include/arpa/inet.h
  type in_addr (line 39) | struct in_addr
  type in_addr (line 40) | struct in_addr
  type in_addr (line 41) | struct in_addr
  type in_addr (line 42) | struct in_addr
  type in_addr (line 44) | struct in_addr

FILE: atlas-aapt/bionic/libc/include/arpa/nameser.h
  type ns_sect (line 97) | typedef enum __ns_sect {
  type u_char (line 112) | typedef u_char ns_nname[NS_MAXNNAME];
  type u_char (line 113) | typedef const u_char *ns_nname_ct;
  type u_char (line 114) | typedef u_char *ns_nname_t;
  type ns_namemap (line 116) | struct ns_namemap { ns_nname_ct base; int len; }
  type ns_namemap (line 117) | struct ns_namemap
  type ns_namemap (line 118) | struct ns_namemap
  type ns_msg (line 125) | typedef struct __ns_msg {
  type ns_newmsg (line 137) | struct ns_newmsg {
  type ns_newmsg (line 142) | typedef struct ns_newmsg ns_newmsg;
  type _ns_flagdata (line 145) | struct _ns_flagdata {  int mask, shift;  }
  type _ns_flagdata (line 146) | struct _ns_flagdata
  type ns_rr (line 159) | typedef	struct __ns_rr {
  type ns_rr2 (line 171) | typedef	struct __ns_rr2 {
  type ns_flag (line 195) | typedef enum __ns_flag {
  type ns_opcode (line 212) | typedef enum __ns_opcode {
  type ns_rcode (line 225) | typedef	enum __ns_rcode {
  type ns_update_operation (line 248) | typedef enum __ns_update_operation {
  type ns_tsig_key (line 257) | struct ns_tsig_key {
  type ns_tsig_key (line 262) | typedef struct ns_tsig_key ns_tsig_key;
  type ns_tcp_tsig_state (line 267) | struct ns_tcp_tsig_state {
  type ns_tcp_tsig_state (line 274) | typedef struct ns_tcp_tsig_state ns_tcp_tsig_state;
  type ns_type (line 287) | typedef enum __ns_type {
  type ns_class (line 368) | typedef enum __ns_class {
  type ns_key_types (line 382) | typedef enum __ns_key_types {
  type ns_cert_types (line 389) | typedef enum __ns_cert_types {

FILE: atlas-aapt/bionic/libc/include/arpa/nameser_compat.h
  type HEADER (line 54) | typedef struct {

FILE: atlas-aapt/bionic/libc/include/bits/pthread_types.h
  type pthread_t (line 34) | typedef long pthread_t;
  type pthread_attr_t (line 36) | typedef struct {

FILE: atlas-aapt/bionic/libc/include/bits/timespec.h
  type timespec (line 40) | struct timespec {

FILE: atlas-aapt/bionic/libc/include/dirent.h
  type dirent (line 73) | struct dirent
  type dirent64 (line 74) | struct dirent64
  type dirent (line 75) | struct dirent
  type dirent (line 75) | struct dirent
  type dirent64 (line 76) | struct dirent64
  type dirent64 (line 76) | struct dirent64
  type dirent (line 82) | struct dirent
  type dirent (line 82) | struct dirent
  type dirent64 (line 83) | struct dirent64
  type dirent64 (line 83) | struct dirent64
  type dirent64 (line 84) | struct dirent64
  type dirent64 (line 84) | struct dirent64
  type dirent64 (line 84) | struct dirent64
  type dirent64 (line 84) | struct dirent64
  type dirent (line 85) | struct dirent
  type dirent (line 85) | struct dirent
  type dirent (line 85) | struct dirent
  type dirent (line 85) | struct dirent
  type dirent64 (line 88) | struct dirent64
  type dirent64 (line 88) | struct dirent64
  type dirent64 (line 88) | struct dirent64
  type dirent64 (line 88) | struct dirent64
  type dirent (line 89) | struct dirent
  type dirent (line 89) | struct dirent
  type dirent (line 89) | struct dirent
  type dirent (line 89) | struct dirent

FILE: atlas-aapt/bionic/libc/include/dlfcn.h
  function __BEGIN_DECLS (line 33) | __BEGIN_DECLS

FILE: atlas-aapt/bionic/libc/include/elf.h
  type __s64 (line 40) | typedef __s64 Elf32_Sxword;
  type Elf32_auxv_t (line 42) | typedef struct {
  type Elf64_auxv_t (line 49) | typedef struct {
  type Elf32_Half (line 56) | typedef Elf32_Half Elf32_Versym;
  type Elf64_Half (line 57) | typedef Elf64_Half Elf64_Versym;
  type Elf32_Verdef (line 59) | typedef struct {
  type Elf32_Verdaux (line 69) | typedef struct {
  type Elf64_Verdef (line 74) | typedef struct {
  type Elf64_Verdaux (line 84) | typedef struct {
  type Elf32_Verneed (line 89) | typedef struct {
  type Elf32_Vernaux (line 97) | typedef struct {
  type Elf64_Verneed (line 105) | typedef struct {
  type Elf64_Vernaux (line 113) | typedef struct {

FILE: atlas-aapt/bionic/libc/include/fcntl.h
  type iovec (line 74) | struct iovec
  function __BIONIC_FORTIFY_INLINE (line 100) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 119) | __BIONIC_FORTIFY_INLINE

FILE: atlas-aapt/bionic/libc/include/fts.h
  type FTS (line 40) | typedef struct {
  type FTSENT (line 65) | typedef struct _ftsent {

FILE: atlas-aapt/bionic/libc/include/ftw.h
  type FTW (line 51) | struct FTW {
  type stat (line 57) | struct stat
  type stat (line 58) | struct stat
  type FTW (line 59) | struct FTW
  type stat64 (line 60) | struct stat64
  type stat64 (line 61) | struct stat64
  type FTW (line 62) | struct FTW

FILE: atlas-aapt/bionic/libc/include/getopt.h
  type option (line 46) | struct option {
  type option (line 62) | struct option
  type option (line 64) | struct option

FILE: atlas-aapt/bionic/libc/include/grp.h
  type group (line 46) | struct group {
  type group (line 55) | struct group
  type group (line 57) | struct group
  type group (line 60) | struct group
  type group (line 61) | struct group
  type group (line 62) | struct group
  type group (line 63) | struct group

FILE: atlas-aapt/bionic/libc/include/ifaddrs.h
  function __BEGIN_DECLS (line 36) | __BEGIN_DECLS
  type ifaddrs (line 54) | struct ifaddrs
  type ifaddrs (line 55) | struct ifaddrs

FILE: atlas-aapt/bionic/libc/include/inttypes.h
  type imaxdiv_t (line 251) | typedef struct {

FILE: atlas-aapt/bionic/libc/include/link.h
  type dl_phdr_info (line 42) | struct dl_phdr_info {
  type dl_phdr_info (line 49) | struct dl_phdr_info
  type link_map (line 57) | struct link_map {
  type r_debug (line 66) | struct r_debug {

FILE: atlas-aapt/bionic/libc/include/locale.h
  type lconv (line 68) | struct lconv {
  type lconv (line 95) | struct lconv

FILE: atlas-aapt/bionic/libc/include/machine/ieee.h
  type ieee_single (line 61) | struct ieee_single {
  type ieee_double (line 75) | struct ieee_double {
  type ieee_ext (line 105) | struct ieee_ext {

FILE: atlas-aapt/bionic/libc/include/malloc.h
  type mallinfo (line 36) | struct mallinfo {
  type mallinfo (line 50) | struct mallinfo

FILE: atlas-aapt/bionic/libc/include/mntent.h
  type mntent (line 38) | struct mntent {
  type mntent (line 50) | struct mntent
  type mntent (line 51) | struct mntent
  type mntent (line 51) | struct mntent

FILE: atlas-aapt/bionic/libc/include/net/if.h
  function __BEGIN_DECLS (line 40) | __BEGIN_DECLS
  type if_nameindex (line 49) | struct if_nameindex
  type if_nameindex (line 50) | struct if_nameindex

FILE: atlas-aapt/bionic/libc/include/net/if_ether.h
  type ether_addr (line 66) | struct ether_addr {
  type ether_header (line 73) | struct	ether_header {
  type ifnet (line 155) | struct ifnet
  type ifreq (line 156) | struct ifreq
  type ethercom (line 156) | struct ethercom
  type ifreq (line 157) | struct ifreq
  type ethercom (line 157) | struct ethercom
  type ifreq (line 158) | struct ifreq
  type ethercom (line 158) | struct ethercom
  type sockaddr (line 159) | struct sockaddr
  type ifnet (line 192) | struct ifnet
  type ifnet (line 193) | struct ifnet
  type ether_addr (line 208) | struct ether_addr
  type ether_addr (line 209) | struct ether_addr
  type ether_addr (line 211) | struct ether_addr
  type ether_addr (line 212) | struct ether_addr
  type ether_addr (line 213) | struct ether_addr

FILE: atlas-aapt/bionic/libc/include/net/if_ieee1394.h
  type ieee1394_hwaddr (line 43) | struct ieee1394_hwaddr {
  type ieee1394_bpfhdr (line 53) | struct ieee1394_bpfhdr {
  type ieee1394_header (line 62) | struct ieee1394_header {
  type ieee1394_unfraghdr (line 70) | struct ieee1394_unfraghdr {
  type ieee1394_fraghdr (line 76) | struct ieee1394_fraghdr {
  type ieee1394_reass_pkt (line 93) | struct ieee1394_reass_pkt {
  type ieee1394_reassq (line 104) | struct ieee1394_reassq {
  type ieee1394com (line 110) | struct ieee1394com {
  type ifnet (line 118) | struct ifnet
  type mbuf (line 118) | struct mbuf
  type ifnet (line 119) | struct ifnet
  type ieee1394_hwaddr (line 119) | struct ieee1394_hwaddr
  type ifnet (line 120) | struct ifnet
  type ifnet (line 121) | struct ifnet
  type mbuf (line 122) | struct mbuf
  type ifnet (line 122) | struct ifnet
  type mbuf (line 122) | struct mbuf
  type ifnet (line 123) | struct ifnet
  type ifnet (line 124) | struct ifnet

FILE: atlas-aapt/bionic/libc/include/netdb.h
  type hostent (line 81) | struct hostent {
  type netent (line 90) | struct netent {
  type servent (line 97) | struct servent {
  type protoent (line 104) | struct protoent {
  type addrinfo (line 110) | struct addrinfo {
  type hostent (line 207) | struct hostent
  type hostent (line 208) | struct hostent
  type hostent (line 209) | struct hostent
  type hostent (line 209) | struct hostent
  type hostent (line 210) | struct hostent
  type hostent (line 211) | struct hostent
  type hostent (line 211) | struct hostent
  type hostent (line 212) | struct hostent
  type hostent (line 213) | struct hostent
  type hostent (line 213) | struct hostent
  type hostent (line 214) | struct hostent
  type hostent (line 215) | struct hostent
  type hostent (line 215) | struct hostent
  type hostent (line 216) | struct hostent
  type hostent (line 217) | struct hostent
  type netent (line 218) | struct netent
  type netent (line 219) | struct netent
  type netent (line 219) | struct netent
  type netent (line 220) | struct netent
  type netent (line 221) | struct netent
  type netent (line 221) | struct netent
  type netent (line 222) | struct netent
  type netent (line 223) | struct netent
  type netent (line 223) | struct netent
  type protoent (line 225) | struct protoent
  type protoent (line 226) | struct protoent
  type protoent (line 226) | struct protoent
  type protoent (line 227) | struct protoent
  type protoent (line 228) | struct protoent
  type protoent (line 228) | struct protoent
  type protoent (line 229) | struct protoent
  type protoent (line 230) | struct protoent
  type protoent (line 230) | struct protoent
  type servent (line 231) | struct servent
  type servent (line 232) | struct servent
  type servent (line 233) | struct servent
  type addrinfo (line 240) | struct addrinfo
  type addrinfo (line 240) | struct addrinfo
  type sockaddr (line 241) | struct sockaddr
  type addrinfo (line 242) | struct addrinfo

FILE: atlas-aapt/bionic/libc/include/netinet/icmp6.h
  type icmp6_hdr (line 73) | struct icmp6_hdr {
  type mld_hdr (line 183) | struct mld_hdr {
  type nd_router_solicit (line 212) | struct nd_router_solicit {	/* router solicitation */
  type nd_router_advert (line 222) | struct nd_router_advert {	/* router advertisement */
  type nd_neighbor_solicit (line 250) | struct nd_neighbor_solicit {	/* neighbor solicitation */
  type nd_neighbor_advert (line 261) | struct nd_neighbor_advert {	/* neighbor advertisement */
  type nd_redirect (line 283) | struct nd_redirect {		/* redirect */
  type nd_opt_hdr (line 295) | struct nd_opt_hdr {		/* Neighbor discovery option header */
  type nd_opt_route_info (line 315) | struct nd_opt_route_info {	/* route info */
  type nd_opt_prefix_info (line 324) | struct nd_opt_prefix_info {	/* prefix information */
  type nd_opt_rd_hdr (line 338) | struct nd_opt_rd_hdr {		/* redirected header */
  type nd_opt_mtu (line 346) | struct nd_opt_mtu {		/* MTU option */
  type nd_opt_rdnss (line 353) | struct nd_opt_rdnss {		/* RDNSS option RFC 6106 */
  type nd_opt_dnssl (line 361) | struct nd_opt_dnssl {		/* DNSSL option RFC 6106 */
  type icmp6_namelookup (line 373) | struct icmp6_namelookup {
  type icmp6_nodeinfo (line 387) | struct icmp6_nodeinfo {
  type ni_reply_fqdn (line 454) | struct ni_reply_fqdn {
  type icmp6_router_renum (line 463) | struct icmp6_router_renum {	/* router renumbering header */
  type rr_pco_match (line 482) | struct rr_pco_match {		/* match prefix part */
  type rr_pco_use (line 498) | struct rr_pco_use {		/* use prefix part */
  type rr_result (line 519) | struct rr_result {		/* router renumbering result message */
  type icmp6_filter (line 538) | struct icmp6_filter {
  type rtentry (line 673) | struct	rtentry
  type rttimer (line 674) | struct	rttimer
  type in6_multi (line 675) | struct	in6_multi
  type mbuf (line 678) | struct mbuf
  type mbuf (line 679) | struct mbuf
  type mbuf (line 680) | struct mbuf
  type ifnet (line 680) | struct ifnet
  type mbuf (line 681) | struct mbuf
  type mbuf (line 683) | struct mbuf
  type mbuf (line 684) | struct mbuf
  type mbuf (line 685) | struct mbuf
  type mbuf (line 686) | struct mbuf
  type rtentry (line 686) | struct rtentry
  type ip6ctlparam (line 691) | struct	ip6ctlparam
  type ip6ctlparam (line 692) | struct ip6ctlparam
  type in6_addr (line 693) | struct in6_addr

FILE: atlas-aapt/bionic/libc/include/netinet/in.h
  type in_port_t (line 47) | typedef uint16_t in_port_t;
  type in_addr_t (line 48) | typedef uint32_t in_addr_t;
  type sockaddr_in (line 50) | struct sockaddr_in
  type in6_addr (line 52) | struct in6_addr
  type in6_addr (line 53) | struct in6_addr

FILE: atlas-aapt/bionic/libc/include/netinet/in_systm.h
  type u_int16_t (line 50) | typedef u_int16_t n_short;
  type u_int32_t (line 51) | typedef u_int32_t n_long;
  type u_int32_t (line 53) | typedef u_int32_t n_time;

FILE: atlas-aapt/bionic/libc/include/netinet/ip.h
  type ip (line 55) | struct ip {
  type ip_timestamp (line 148) | struct	ip_timestamp {
  type ippseudo (line 198) | struct ippseudo {
  type iphdr (line 231) | struct iphdr {
  type ip_auth_hdr (line 252) | struct ip_auth_hdr {
  type ip_esp_hdr (line 261) | struct ip_esp_hdr {
  type ip_comp_hdr (line 267) | struct ip_comp_hdr {

FILE: atlas-aapt/bionic/libc/include/netinet/ip6.h
  type ip6_hdr (line 72) | struct ip6_hdr {
  type ip6_hdr_pseudo (line 116) | struct ip6_hdr_pseudo {
  type ip6_ext (line 129) | struct	ip6_ext {
  type ip6_hbh (line 136) | struct ip6_hbh {
  type ip6_dest (line 144) | struct ip6_dest {
  type ip6_opt (line 174) | struct ip6_opt {
  type ip6_opt_jumbo (line 180) | struct ip6_opt_jumbo {
  type ip6_opt_nsap (line 188) | struct ip6_opt_nsap {
  type ip6_opt_tunnel (line 198) | struct ip6_opt_tunnel {
  type ip6_opt_router (line 205) | struct ip6_opt_router {
  type ip6_rthdr (line 224) | struct ip6_rthdr {
  type ip6_rthdr0 (line 233) | struct ip6_rthdr0 {
  type ip6_frag (line 242) | struct ip6_frag {

FILE: atlas-aapt/bionic/libc/include/netinet/ip_icmp.h
  function __BEGIN_DECLS (line 41) | __BEGIN_DECLS
  type icmp (line 66) | struct icmp {

FILE: atlas-aapt/bionic/libc/include/netinet/udp.h
  type udphdr (line 36) | struct udphdr {

FILE: atlas-aapt/bionic/libc/include/nsswitch.h
  type ns_dtab (line 110) | typedef struct {
  type ns_src (line 140) | typedef struct {
  type ns_mtab (line 165) | typedef struct {
  type ns_mtab (line 179) | typedef	ns_mtab *(*nss_module_register_fn)(const char *, u_int *,
  type ns_dbt (line 193) | typedef struct {
  type ns_mod (line 202) | typedef struct {

FILE: atlas-aapt/bionic/libc/include/poll.h
  type pollfd (line 41) | struct pollfd
  type pollfd (line 42) | struct pollfd
  type timespec (line 42) | struct timespec
  type pollfd (line 44) | struct pollfd
  type pollfd (line 45) | struct pollfd
  type pollfd (line 48) | struct pollfd
  type timespec (line 48) | struct timespec
  type pollfd (line 49) | struct pollfd
  type timespec (line 49) | struct timespec
  function __BIONIC_FORTIFY_INLINE (line 54) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 70) | __BIONIC_FORTIFY_INLINE

FILE: atlas-aapt/bionic/libc/include/pthread.h
  type pthread_mutex_t (line 39) | typedef struct {
  type pthread_mutexattr_t (line 47) | typedef long pthread_mutexattr_t;
  type pthread_cond_t (line 64) | typedef struct {
  type pthread_condattr_t (line 72) | typedef long pthread_condattr_t;
  type pthread_rwlock_t (line 76) | typedef struct {
  type pthread_rwlockattr_t (line 84) | typedef long pthread_rwlockattr_t;
  type pthread_key_t (line 93) | typedef int pthread_key_t;
  type pthread_once_t (line 95) | typedef int pthread_once_t;
  type pthread_barrier_t (line 99) | typedef struct {
  type pthread_barrierattr_t (line 107) | typedef int pthread_barrierattr_t;
  type pthread_spinlock_t (line 111) | typedef struct {
  type sched_param (line 141) | struct sched_param
  type sched_param (line 149) | struct sched_param
  type timespec (line 166) | struct timespec
  type sched_param (line 179) | struct sched_param
  type timespec (line 204) | struct timespec
  type timespec (line 224) | struct timespec
  type timespec (line 225) | struct timespec
  type sched_param (line 250) | struct sched_param
  type __pthread_cleanup_t (line 256) | typedef struct __pthread_cleanup_t {
  type timespec (line 286) | struct timespec
  type timespec (line 287) | struct timespec
  type timespec (line 289) | struct timespec

FILE: atlas-aapt/bionic/libc/include/pty.h
  type termios (line 39) | struct termios
  type winsize (line 39) | struct winsize
  type termios (line 40) | struct termios
  type winsize (line 40) | struct winsize

FILE: atlas-aapt/bionic/libc/include/pwd.h
  type passwd (line 101) | struct passwd
  type passwd (line 120) | struct passwd
  type passwd (line 122) | struct passwd
  type passwd (line 122) | struct passwd
  type passwd (line 123) | struct passwd
  type passwd (line 123) | struct passwd

FILE: atlas-aapt/bionic/libc/include/regex.h
  type regoff_t (line 47) | typedef ssize_t regoff_t;
  type regex_t (line 49) | typedef struct {
  type regmatch_t (line 56) | typedef struct {

FILE: atlas-aapt/bionic/libc/include/resolv.h
  type res_state (line 42) | struct res_state
  type __res_state (line 44) | struct __res_state

FILE: atlas-aapt/bionic/libc/include/sched.h
  type sched_param (line 40) | struct sched_param {
  type sched_param (line 44) | struct sched_param
  type sched_param (line 49) | struct sched_param
  type sched_param (line 50) | struct sched_param
  type timespec (line 51) | struct timespec
  type cpu_set_t (line 71) | typedef struct {

FILE: atlas-aapt/bionic/libc/include/search.h
  type VISIT (line 15) | typedef enum {
  type node_t (line 23) | typedef struct node {

FILE: atlas-aapt/bionic/libc/include/semaphore.h
  type sem_t (line 38) | typedef struct {
  type timespec (line 51) | struct timespec

FILE: atlas-aapt/bionic/libc/include/sgtty.h
  type sgttyb (line 44) | struct sgttyb
  type sgttyb (line 45) | struct sgttyb

FILE: atlas-aapt/bionic/libc/include/signal.h
  type __sighandler_t (line 76) | typedef __sighandler_t sig_t;
  type __sighandler_t (line 77) | typedef __sighandler_t sighandler_t;
  type sigaction (line 83) | struct sigaction {
  type sigaction (line 95) | struct sigaction {
  type sigaction (line 106) | struct sigaction
  type sigaction (line 106) | struct sigaction
  type timespec (line 136) | struct timespec

FILE: atlas-aapt/bionic/libc/include/stdatomic.h
  type memory_order (line 284) | typedef enum {
  function atomic_thread_fence (line 297) | static __inline void
  function atomic_signal_fence (line 310) | static __inline void
  type atomic_bool (line 354) | typedef _Atomic(bool)			atomic_bool;
  type atomic_char (line 355) | typedef _Atomic(char)			atomic_char;
  type atomic_schar (line 356) | typedef _Atomic(signed char)		atomic_schar;
  type atomic_uchar (line 357) | typedef _Atomic(unsigned char)		atomic_uchar;
  type atomic_short (line 358) | typedef _Atomic(short)			atomic_short;
  type atomic_ushort (line 359) | typedef _Atomic(unsigned short)		atomic_ushort;
  type atomic_int (line 360) | typedef _Atomic(int)			atomic_int;
  type atomic_uint (line 361) | typedef _Atomic(unsigned int)		atomic_uint;
  type atomic_long (line 362) | typedef _Atomic(long)			atomic_long;
  type atomic_ulong (line 363) | typedef _Atomic(unsigned long)		atomic_ulong;
  type atomic_llong (line 364) | typedef _Atomic(long long)		atomic_llong;
  type atomic_ullong (line 365) | typedef _Atomic(unsigned long long)	atomic_ullong;
  type atomic_char16_t (line 367) | typedef _Atomic(char16_t)		atomic_char16_t;
  type atomic_char32_t (line 368) | typedef _Atomic(char32_t)		atomic_char32_t;
  type atomic_wchar_t (line 370) | typedef _Atomic(wchar_t)		atomic_wchar_t;
  type atomic_int_least8_t (line 371) | typedef _Atomic(int_least8_t)		atomic_int_least8_t;
  type atomic_uint_least8_t (line 372) | typedef _Atomic(uint_least8_t)	atomic_uint_least8_t;
  type atomic_int_least16_t (line 373) | typedef _Atomic(int_least16_t)	atomic_int_least16_t;
  type atomic_uint_least16_t (line 374) | typedef _Atomic(uint_least16_t)	atomic_uint_least16_t;
  type atomic_int_least32_t (line 375) | typedef _Atomic(int_least32_t)	atomic_int_least32_t;
  type atomic_uint_least32_t (line 376) | typedef _Atomic(uint_least32_t)	atomic_uint_least32_t;
  type atomic_int_least64_t (line 377) | typedef _Atomic(int_least64_t)	atomic_int_least64_t;
  type atomic_uint_least64_t (line 378) | typedef _Atomic(uint_least64_t)	atomic_uint_least64_t;
  type atomic_int_fast8_t (line 379) | typedef _Atomic(int_fast8_t)		atomic_int_fast8_t;
  type atomic_uint_fast8_t (line 380) | typedef _Atomic(uint_fast8_t)		atomic_uint_fast8_t;
  type atomic_int_fast16_t (line 381) | typedef _Atomic(int_fast16_t)		atomic_int_fast16_t;
  type atomic_uint_fast16_t (line 382) | typedef _Atomic(uint_fast16_t)	atomic_uint_fast16_t;
  type atomic_int_fast32_t (line 383) | typedef _Atomic(int_fast32_t)		atomic_int_fast32_t;
  type atomic_uint_fast32_t (line 384) | typedef _Atomic(uint_fast32_t)	atomic_uint_fast32_t;
  type atomic_int_fast64_t (line 385) | typedef _Atomic(int_fast64_t)		atomic_int_fast64_t;
  type atomic_uint_fast64_t (line 386) | typedef _Atomic(uint_fast64_t)	atomic_uint_fast64_t;
  type atomic_intptr_t (line 387) | typedef _Atomic(intptr_t)		atomic_intptr_t;
  type atomic_uintptr_t (line 388) | typedef _Atomic(uintptr_t)		atomic_uintptr_t;
  type atomic_size_t (line 389) | typedef _Atomic(size_t)		atomic_size_t;
  type atomic_ptrdiff_t (line 390) | typedef _Atomic(ptrdiff_t)		atomic_ptrdiff_t;
  type atomic_intmax_t (line 391) | typedef _Atomic(intmax_t)		atomic_intmax_t;
  type atomic_uintmax_t (line 392) | typedef _Atomic(uintmax_t)		atomic_uintmax_t;
  type atomic_flag (line 543) | typedef struct {
  function atomic_flag_test_and_set_explicit (line 549) | static __inline bool
  function atomic_flag_clear_explicit (line 556) | static __inline void
  function atomic_flag_test_and_set (line 564) | static __inline bool
  function atomic_flag_clear (line 572) | static __inline void

FILE: atlas-aapt/bionic/libc/include/stdint.h
  type __signed (line 35) | typedef __signed char __int8_t;
  type __uint8_t (line 36) | typedef unsigned char __uint8_t;
  type __int16_t (line 37) | typedef short __int16_t;
  type __uint16_t (line 38) | typedef unsigned short __uint16_t;
  type __int32_t (line 39) | typedef int __int32_t;
  type __uint32_t (line 40) | typedef unsigned int __uint32_t;
  type __int64_t (line 42) | typedef long __int64_t;
  type __uint64_t (line 43) | typedef unsigned long __uint64_t;
  type __int64_t (line 45) | typedef long long __int64_t;
  type __uint64_t (line 46) | typedef unsigned long long __uint64_t;
  type __intptr_t (line 50) | typedef long __intptr_t;
  type __uintptr_t (line 51) | typedef unsigned long __uintptr_t;
  type __intptr_t (line 53) | typedef int __intptr_t;
  type __uintptr_t (line 54) | typedef unsigned int __uintptr_t;
  type __int8_t (line 57) | typedef __int8_t      int8_t;
  type __uint8_t (line 58) | typedef __uint8_t     uint8_t;
  type __int16_t (line 60) | typedef __int16_t     int16_t;
  type __uint16_t (line 61) | typedef __uint16_t    uint16_t;
  type __int32_t (line 63) | typedef __int32_t     int32_t;
  type __uint32_t (line 64) | typedef __uint32_t    uint32_t;
  type __int64_t (line 66) | typedef __int64_t     int64_t;
  type __uint64_t (line 67) | typedef __uint64_t    uint64_t;
  type __intptr_t (line 69) | typedef __intptr_t    intptr_t;
  type __uintptr_t (line 70) | typedef __uintptr_t   uintptr_t;
  type int_least8_t (line 72) | typedef int8_t        int_least8_t;
  type uint_least8_t (line 73) | typedef uint8_t       uint_least8_t;
  type int_least16_t (line 75) | typedef int16_t       int_least16_t;
  type uint_least16_t (line 76) | typedef uint16_t      uint_least16_t;
  type int_least32_t (line 78) | typedef int32_t       int_least32_t;
  type uint_least32_t (line 79) | typedef uint32_t      uint_least32_t;
  type int_least64_t (line 81) | typedef int64_t       int_least64_t;
  type uint_least64_t (line 82) | typedef uint64_t      uint_least64_t;
  type int_fast8_t (line 84) | typedef int8_t        int_fast8_t;
  type uint_fast8_t (line 85) | typedef uint8_t       uint_fast8_t;
  type int_fast64_t (line 87) | typedef int64_t       int_fast64_t;
  type uint_fast64_t (line 88) | typedef uint64_t      uint_fast64_t;
  type int_fast16_t (line 91) | typedef int64_t       int_fast16_t;
  type uint_fast16_t (line 92) | typedef uint64_t      uint_fast16_t;
  type int_fast32_t (line 93) | typedef int64_t       int_fast32_t;
  type uint_fast32_t (line 94) | typedef uint64_t      uint_fast32_t;
  type int_fast16_t (line 96) | typedef int32_t       int_fast16_t;
  type uint_fast16_t (line 97) | typedef uint32_t      uint_fast16_t;
  type int_fast32_t (line 98) | typedef int32_t       int_fast32_t;
  type uint_fast32_t (line 99) | typedef uint32_t      uint_fast32_t;
  type uintmax_t (line 102) | typedef uint64_t      uintmax_t;
  type intmax_t (line 103) | typedef int64_t       intmax_t;

FILE: atlas-aapt/bionic/libc/include/stdio.h
  type off64_t (line 53) | typedef off64_t fpos64_t;
  type __sFILE (line 55) | struct __sFILE
  type FILE (line 56) | typedef struct __sFILE FILE;
  function __BIONIC_FORTIFY_INLINE (line 347) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 373) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 401) | __BIONIC_FORTIFY_INLINE

FILE: atlas-aapt/bionic/libc/include/stdlib.h
  type div_t (line 138) | typedef struct {
  type ldiv_t (line 145) | typedef struct {
  type lldiv_t (line 152) | typedef struct {
  function __BIONIC_FORTIFY_INLINE (line 185) | __BIONIC_FORTIFY_INLINE

FILE: atlas-aapt/bionic/libc/include/string.h
  function __BIONIC_FORTIFY_INLINE (line 148) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 169) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 190) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 195) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 200) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 205) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 210) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 231) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 252) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 257) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 262) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 267) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 288) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 308) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 327) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 346) | __BIONIC_FORTIFY_INLINE

FILE: atlas-aapt/bionic/libc/include/sys/_system_properties.h
  type prop_msg (line 37) | typedef struct prop_msg prop_msg;
  function __BEGIN_DECLS (line 52) | __BEGIN_DECLS

FILE: atlas-aapt/bionic/libc/include/sys/cdefs.h
  function __always_inline (line 465) | extern __inline__ __always_inline __attribute__((gnu_inline))

FILE: atlas-aapt/bionic/libc/include/sys/epoll.h
  type epoll_data_t (line 60) | typedef union epoll_data {
  type epoll_event (line 67) | struct epoll_event {
  type epoll_event (line 78) | struct epoll_event
  type epoll_event (line 79) | struct epoll_event
  type epoll_event (line 80) | struct epoll_event

FILE: atlas-aapt/bionic/libc/include/sys/eventfd.h
  type eventfd_t (line 41) | typedef uint64_t eventfd_t;

FILE: atlas-aapt/bionic/libc/include/sys/ioctl_compat.h
  type tchars (line 46) | struct tchars {
  type ltchars (line 55) | struct ltchars {
  type sgttyb (line 69) | struct sgttyb {

FILE: atlas-aapt/bionic/libc/include/sys/procfs.h
  type elf_greg_t (line 38) | typedef elf_greg_t elf_gregset_t[NGREG];
  type fpregset_t (line 40) | typedef fpregset_t elf_fpregset_t;
  type elf_fpxregset_t (line 43) | typedef struct user_fpxregs_struct elf_fpxregset_t;
  type elf_gregset_t (line 46) | typedef elf_gregset_t prgregset_t;
  type elf_fpregset_t (line 47) | typedef elf_fpregset_t prfpregset_t;
  type pid_t (line 49) | typedef pid_t lwpid_t;

FILE: atlas-aapt/bionic/libc/include/sys/queue.h
  type type (line 95) | struct type
  type type (line 214) | struct type
  type type (line 288) | struct type
  type type (line 456) | struct type
  type type (line 465) | struct type

FILE: atlas-aapt/bionic/libc/include/sys/resource.h
  type rlim_t (line 43) | typedef unsigned long rlim_t;
  type rlimit (line 45) | struct rlimit
  type rlimit (line 46) | struct rlimit
  type rlimit64 (line 48) | struct rlimit64
  type rlimit64 (line 49) | struct rlimit64
  type rusage (line 54) | struct rusage
  type rlimit (line 56) | struct rlimit
  type rlimit (line 56) | struct rlimit
  type rlimit64 (line 57) | struct rlimit64
  type rlimit64 (line 57) | struct rlimit64

FILE: atlas-aapt/bionic/libc/include/sys/select.h
  type fd_set (line 43) | typedef struct {
  type timeval (line 74) | struct timeval
  type timespec (line 75) | struct timespec

FILE: atlas-aapt/bionic/libc/include/sys/socket.h
  type sa_family_t (line 46) | typedef unsigned short sa_family_t;
  type timespec (line 48) | struct timespec
  type sockaddr (line 75) | struct sockaddr {
  type linger (line 80) | struct linger {
  type msghdr (line 85) | struct msghdr {
  type mmsghdr (line 95) | struct mmsghdr {
  type cmsghdr (line 100) | struct cmsghdr {
  type cmsghdr (line 116) | struct cmsghdr
  type msghdr (line 116) | struct msghdr
  type cmsghdr (line 116) | struct cmsghdr
  type ucred (line 122) | struct ucred {
  type sockaddr (line 271) | struct sockaddr
  type sockaddr (line 272) | struct sockaddr
  type sockaddr (line 273) | struct sockaddr
  type sockaddr (line 274) | struct sockaddr
  type sockaddr (line 275) | struct sockaddr
  type sockaddr (line 276) | struct sockaddr
  type mmsghdr (line 279) | struct mmsghdr
  type timespec (line 279) | struct timespec
  type msghdr (line 280) | struct msghdr
  type mmsghdr (line 281) | struct mmsghdr
  type msghdr (line 282) | struct msghdr
  type sockaddr (line 291) | struct sockaddr
  type sockaddr (line 292) | struct sockaddr
  type sockaddr (line 295) | struct sockaddr
  type sockaddr (line 296) | struct sockaddr
  function __BIONIC_FORTIFY_INLINE (line 300) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 321) | __BIONIC_FORTIFY_INLINE

FILE: atlas-aapt/bionic/libc/include/sys/stat.h
  type stat (line 142) | struct stat
  type stat64 (line 143) | struct stat64
  type stat (line 144) | struct stat
  type stat64 (line 145) | struct stat64
  type stat (line 146) | struct stat
  type stat64 (line 147) | struct stat64
  type stat (line 148) | struct stat
  type stat64 (line 149) | struct stat64
  type timespec (line 183) | struct timespec
  type timespec (line 184) | struct timespec

FILE: atlas-aapt/bionic/libc/include/sys/statvfs.h
  type statvfs (line 62) | struct statvfs
  type statvfs64 (line 63) | struct statvfs64
  type statvfs (line 64) | struct statvfs
  type statvfs64 (line 65) | struct statvfs64

FILE: atlas-aapt/bionic/libc/include/sys/sysinfo.h
  type sysinfo (line 36) | struct sysinfo

FILE: atlas-aapt/bionic/libc/include/sys/system_properties.h
  type prop_info (line 36) | struct prop_info

FILE: atlas-aapt/bionic/libc/include/sys/time.h
  type timeval (line 41) | struct timeval
  type timezone (line 41) | struct timezone
  type timeval (line 42) | struct timeval
  type timezone (line 42) | struct timezone
  type itimerval (line 44) | struct itimerval
  type itimerval (line 45) | struct itimerval
  type itimerval (line 45) | struct itimerval
  type timeval (line 47) | struct timeval

FILE: atlas-aapt/bionic/libc/include/sys/timerfd.h
  type itimerspec (line 45) | struct itimerspec
  type itimerspec (line 46) | struct itimerspec
  type itimerspec (line 47) | struct itimerspec

FILE: atlas-aapt/bionic/libc/include/sys/times.h
  type tms (line 38) | struct tms

FILE: atlas-aapt/bionic/libc/include/sys/timex.h
  type timex (line 38) | struct timex
  type timex (line 39) | struct timex

FILE: atlas-aapt/bionic/libc/include/sys/types.h
  type __kernel_gid32_t (line 39) | typedef __kernel_gid32_t __gid_t;
  type __gid_t (line 40) | typedef __gid_t gid_t;
  type __kernel_uid32_t (line 41) | typedef __kernel_uid32_t __uid_t;
  type __uid_t (line 42) | typedef __uid_t uid_t;
  type __kernel_pid_t (line 43) | typedef __kernel_pid_t __pid_t;
  type __pid_t (line 44) | typedef __pid_t pid_t;
  type __id_t (line 45) | typedef uint32_t __id_t;
  type __id_t (line 46) | typedef __id_t id_t;
  type blkcnt_t (line 48) | typedef unsigned long blkcnt_t;
  type blksize_t (line 49) | typedef unsigned long blksize_t;
  type __kernel_caddr_t (line 50) | typedef __kernel_caddr_t caddr_t;
  type __kernel_clock_t (line 51) | typedef __kernel_clock_t clock_t;
  type __kernel_clockid_t (line 53) | typedef __kernel_clockid_t __clockid_t;
  type __clockid_t (line 54) | typedef __clockid_t clockid_t;
  type __kernel_daddr_t (line 56) | typedef __kernel_daddr_t daddr_t;
  type fsblkcnt_t (line 57) | typedef unsigned long fsblkcnt_t;
  type fsfilcnt_t (line 58) | typedef unsigned long fsfilcnt_t;
  type __kernel_mode_t (line 60) | typedef __kernel_mode_t __mode_t;
  type __mode_t (line 61) | typedef __mode_t mode_t;
  type __kernel_key_t (line 63) | typedef __kernel_key_t __key_t;
  type __key_t (line 64) | typedef __key_t key_t;
  type __kernel_ino_t (line 66) | typedef __kernel_ino_t __ino_t;
  type __ino_t (line 67) | typedef __ino_t ino_t;
  type __nlink_t (line 69) | typedef uint32_t __nlink_t;
  type __nlink_t (line 70) | typedef __nlink_t nlink_t;
  type __timer_t (line 73) | typedef __timer_t timer_t;
  type __kernel_suseconds_t (line 75) | typedef __kernel_suseconds_t __suseconds_t;
  type __suseconds_t (line 76) | typedef __suseconds_t suseconds_t;
  type __useconds_t (line 79) | typedef uint32_t __useconds_t;
  type __useconds_t (line 80) | typedef __useconds_t useconds_t;
  type dev_t (line 84) | typedef uint32_t dev_t;
  type dev_t (line 86) | typedef uint64_t dev_t;
  type __kernel_time_t (line 90) | typedef __kernel_time_t __time_t;
  type __time_t (line 91) | typedef __time_t time_t;
  type off_t (line 94) | typedef int64_t off_t;
  type off_t (line 95) | typedef off_t loff_t;
  type loff_t (line 96) | typedef loff_t off64_t;
  type __kernel_off_t (line 99) | typedef __kernel_off_t off_t;
  type __kernel_loff_t (line 100) | typedef __kernel_loff_t loff_t;
  type loff_t (line 101) | typedef loff_t off64_t;
  type pthread_attr_t (line 107) | typedef  .... pthread_attr_t;
  type pthread_cond_t (line 108) | typedef  .... pthread_cond_t;
  type pthread_condattr_t (line 109) | typedef  .... pthread_condattr_t;
  type pthread_key_t (line 110) | typedef  .... pthread_key_t;
  type pthread_mutex_t (line 111) | typedef  .... pthread_mutex_t;
  type pthread_once_t (line 112) | typedef  .... pthread_once_t;
  type pthread_rwlock_t (line 113) | typedef  .... pthread_rwlock_t;
  type pthread_rwlock_attr_t (line 114) | typedef  .... pthread_rwlock_attr_t;
  type pthread_t (line 115) | typedef  .... pthread_t;
  type __socklen_t (line 120) | typedef int32_t __socklen_t;
  type __socklen_t (line 123) | typedef uint32_t __socklen_t;
  type __socklen_t (line 125) | typedef __socklen_t socklen_t;
  type __builtin_va_list (line 127) | typedef __builtin_va_list __va_list;
  type __kernel_ssize_t (line 136) | typedef __kernel_ssize_t ssize_t;
  type uint_t (line 139) | typedef unsigned int        uint_t;
  type uint (line 140) | typedef unsigned int        uint;
  type u_char (line 145) | typedef unsigned char  u_char;
  type u_short (line 146) | typedef unsigned short u_short;
  type u_int (line 147) | typedef unsigned int   u_int;
  type u_long (line 148) | typedef unsigned long  u_long;
  type u_int32_t (line 150) | typedef uint32_t u_int32_t;
  type u_int16_t (line 151) | typedef uint16_t u_int16_t;
  type u_int8_t (line 152) | typedef uint8_t  u_int8_t;
  type u_int64_t (line 153) | typedef uint64_t u_int64_t;

FILE: atlas-aapt/bionic/libc/include/sys/ucontext.h
  type greg_t (line 60) | typedef int greg_t;
  type greg_t (line 61) | typedef greg_t gregset_t[NGREG];
  type fpregset_t (line 62) | typedef struct user_fpregs fpregset_t;
  type mcontext_t (line 65) | typedef struct sigcontext mcontext_t;
  type ucontext_t (line 67) | typedef struct ucontext {
  type greg_t (line 83) | typedef unsigned long greg_t;
  type greg_t (line 84) | typedef greg_t gregset_t[NGREG];
  type fpregset_t (line 85) | typedef struct user_fpsimd_struct fpregset_t;
  type mcontext_t (line 88) | typedef struct sigcontext mcontext_t;
  type ucontext_t (line 90) | typedef struct ucontext {
  type greg_t (line 125) | typedef int greg_t;
  type greg_t (line 126) | typedef greg_t gregset_t[NGREG];
  type _libc_fpreg (line 128) | struct _libc_fpreg {
  type _libc_fpstate (line 133) | struct _libc_fpstate {
  type _libc_fpstate (line 145) | struct _libc_fpstate
  type mcontext_t (line 147) | typedef struct {
  type ucontext_t (line 154) | typedef struct ucontext {
  type greg_t (line 172) | typedef unsigned long long greg_t;
  type greg_t (line 173) | typedef greg_t gregset_t[NGREG];
  type fpregset_t (line 175) | typedef struct fpregset {
  type mcontext_t (line 186) | typedef struct {
  type mcontext_t (line 204) | typedef struct {
  type ucontext_t (line 226) | typedef struct ucontext {
  type greg_t (line 263) | typedef long greg_t;
  type greg_t (line 264) | typedef greg_t gregset_t[NGREG];
  type _libc_fpxreg (line 266) | struct _libc_fpxreg {
  type _libc_xmmreg (line 272) | struct _libc_xmmreg {
  type _libc_fpstate (line 276) | struct _libc_fpstate {
  type _libc_fpstate (line 290) | struct _libc_fpstate
  type mcontext_t (line 292) | typedef struct {
  type ucontext_t (line 298) | typedef struct ucontext {

FILE: atlas-aapt/bionic/libc/include/sys/uio.h
  type iovec (line 37) | struct iovec
  type iovec (line 38) | struct iovec
  type iovec (line 42) | struct iovec
  type iovec (line 43) | struct iovec
  type iovec (line 45) | struct iovec
  type iovec (line 46) | struct iovec
  type iovec (line 48) | struct iovec
  type iovec (line 49) | struct iovec
  type iovec (line 53) | struct iovec
  type iovec (line 53) | struct iovec
  type iovec (line 54) | struct iovec
  type iovec (line 54) | struct iovec

FILE: atlas-aapt/bionic/libc/include/sys/un.h
  type sa_family_t (line 31) | typedef unsigned short sa_family_t;

FILE: atlas-aapt/bionic/libc/include/sys/user.h
  type user_fpregs_struct (line 42) | struct user_fpregs_struct {
  type user_fpxregs_struct (line 52) | struct user_fpxregs_struct {
  type user_regs_struct (line 67) | struct user_regs_struct {
  type user (line 86) | struct user {
  type user_fpregs_struct (line 106) | struct user_fpregs_struct {
  type user_regs_struct (line 119) | struct user_regs_struct {
  type user (line 148) | struct user {
  type user (line 172) | struct user {
  type user_fpregs (line 188) | struct user_fpregs {
  type user_regs (line 203) | struct user_regs {
  type user_vfp (line 206) | struct user_vfp {
  type user_vfp_exc (line 210) | struct user_vfp_exc {
  type user (line 215) | struct user {
  type user_regs_struct (line 235) | struct user_regs_struct {
  type user_fpsimd_struct (line 241) | struct user_fpsimd_struct {

FILE: atlas-aapt/bionic/libc/include/sys/utsname.h
  type utsname (line 37) | struct utsname {
  type utsname (line 46) | struct utsname

FILE: atlas-aapt/bionic/libc/include/sys/vfs.h
  function __BEGIN_DECLS (line 36) | __BEGIN_DECLS
  type __fsid_t (line 40) | typedef __fsid_t fsid_t;
  type statfs (line 140) | struct statfs
  type statfs64 (line 141) | struct statfs64
  type statfs (line 142) | struct statfs
  type statfs64 (line 143) | struct statfs64

FILE: atlas-aapt/bionic/libc/include/sys/wait.h
  type rusage (line 54) | struct rusage
  type idtype_t (line 60) | typedef int idtype_t;

FILE: atlas-aapt/bionic/libc/include/termios.h
  type termios (line 39) | struct termios
  type termios (line 40) | struct termios
  type termios (line 41) | struct termios
  type termios (line 42) | struct termios
  type termios (line 43) | struct termios
  type termios (line 44) | struct termios
  type termios (line 48) | struct termios
  type termios (line 51) | struct termios

FILE: atlas-aapt/bionic/libc/include/time.h
  type sigevent (line 44) | struct sigevent
  type tm (line 46) | struct tm {
  type timespec (line 63) | struct timespec
  type timespec (line 63) | struct timespec
  type tm (line 65) | struct tm
  type tm (line 66) | struct tm
  type tm (line 69) | struct tm
  type tm (line 71) | struct tm
  type tm (line 72) | struct tm
  type tm (line 72) | struct tm
  type tm (line 74) | struct tm
  type tm (line 75) | struct tm
  type tm (line 75) | struct tm
  type tm (line 77) | struct tm
  type tm (line 78) | struct tm
  type tm (line 79) | struct tm
  type timespec (line 90) | struct timespec
  type timespec (line 91) | struct timespec
  type timespec (line 92) | struct timespec
  type timespec (line 92) | struct timespec
  type timespec (line 93) | struct timespec
  type sigevent (line 95) | struct sigevent
  type itimerspec (line 97) | struct itimerspec
  type itimerspec (line 97) | struct itimerspec
  type itimerspec (line 98) | struct itimerspec
  type tm (line 102) | struct tm
  type tm (line 103) | struct tm

FILE: atlas-aapt/bionic/libc/include/time64.h
  type tm (line 50) | struct tm
  type tm (line 51) | struct tm
  type tm (line 54) | struct tm
  type tm (line 55) | struct tm
  type tm (line 55) | struct tm
  type tm (line 56) | struct tm
  type tm (line 57) | struct tm
  type tm (line 57) | struct tm
  type tm (line 58) | struct tm
  type tm (line 59) | struct tm
  type tm (line 60) | struct tm

FILE: atlas-aapt/bionic/libc/include/uchar.h
  type __CHAR16_TYPE__ (line 38) | typedef __CHAR16_TYPE__ char16_t;
  type __CHAR32_TYPE__ (line 39) | typedef __CHAR32_TYPE__ char32_t;

FILE: atlas-aapt/bionic/libc/include/unistd.h
  function getpagesize (line 225) | __inline__ int getpagesize(void) {
  function __BIONIC_FORTIFY_INLINE (line 297) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 334) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 359) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 390) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 415) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 440) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 465) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 492) | __BIONIC_FORTIFY_INLINE
  function __BIONIC_FORTIFY_INLINE (line 517) | __BIONIC_FORTIFY_INLINE

FILE: atlas-aapt/bionic/libc/include/utime.h
  type utimbuf (line 38) | struct utimbuf

FILE: atlas-aapt/bionic/libc/include/utmp.h
  type lastlog (line 60) | struct lastlog
  type exit_status (line 67) | struct exit_status
  type utmp (line 74) | struct utmp
  type utmp (line 101) | struct utmp

FILE: atlas-aapt/bionic/libc/include/wchar.h
  type mbstate_t (line 44) | typedef struct {
  type wctype_t (line 68) | typedef long wctype_t;
  type tm (line 125) | struct tm

FILE: atlas-aapt/bionic/libc/include/xlocale.h
  type __locale_t (line 33) | struct __locale_t
  type __locale_t (line 34) | struct __locale_t

FILE: atlas-aapt/external/compiler-rt/include/sanitizer/common_interface_defs.h
  type __sanitizer_sandbox_arguments (line 28) | typedef struct {

FILE: atlas-aapt/external/compiler-rt/include/sanitizer/dfsan_interface.h
  type dfsan_label (line 25) | typedef uint16_t dfsan_label;
  type dfsan_label_info (line 32) | struct dfsan_label_info {
  type dfsan_label_info (line 71) | struct dfsan_label_info

FILE: atlas-aapt/external/compiler-rt/include/sanitizer/lsan_interface.h
  function namespace (line 75) | namespace __lsan {

FILE: atlas-aapt/external/compiler-rt/include/sanitizer/tsan_interface_atomic.h
  type __tsan_atomic8 (line 21) | typedef char     __tsan_atomic8;
  type __tsan_atomic16 (line 22) | typedef short    __tsan_atomic16;
  type __tsan_atomic32 (line 23) | typedef int      __tsan_atomic32;
  type __tsan_atomic64 (line 24) | typedef long     __tsan_atomic64;
  type __int128 (line 27) | __extension__ typedef __int128 __tsan_atomic128;
  type __tsan_memory_order (line 35) | typedef enum {

FILE: atlas-aapt/external/compiler-rt/lib/BlocksRuntime/Block_private.h
  type Block_descriptor (line 62) | struct Block_descriptor {
  type Block_layout (line 70) | struct Block_layout {
  type Block_byref (line 80) | struct Block_byref {
  type Block_byref_header (line 91) | struct Block_byref_header {
  type Block_basic (line 163) | struct Block_basic {

FILE: atlas-aapt/external/compiler-rt/lib/BlocksRuntime/data.c
  function _Block_copy_error (line 40) | void _Block_copy_error(void) {

FILE: atlas-aapt/external/compiler-rt/lib/BlocksRuntime/runtime.c
  function OSAtomicCompareAndSwapLong (line 51) | static __inline bool OSAtomicCompareAndSwapLong(long oldl, long newl, lo...
  function OSAtomicCompareAndSwapInt (line 57) | static __inline bool OSAtomicCompareAndSwapInt(int oldi, int newi, int v...
  function OSAtomicCompareAndSwapLong (line 72) | static __inline bool OSAtomicCompareAndSwapLong(long oldl, long newl, lo...
  function OSAtomicCompareAndSwapInt (line 76) | static __inline bool OSAtomicCompareAndSwapInt(int oldi, int newi, int v...
  function latching_incr_long (line 103) | static unsigned long int latching_incr_long(unsigned long int *where) {
  function latching_incr_int (line 116) | static int latching_incr_int(int *where) {
  function latching_decr_long (line 129) | static int latching_decr_long(unsigned long int *where) {
  function latching_decr_int (line 145) | static int latching_decr_int(int *where) {
  function _Block_assign_default (line 173) | static void _Block_assign_default(void *value, void **destptr) {
  function _Block_setHasRefcount_default (line 177) | static void _Block_setHasRefcount_default(const void *ptr, const bool ha...
  function _Block_do_nothing (line 180) | static void _Block_do_nothing(const void *aBlock) { }
  function _Block_retain_object_default (line 182) | static void _Block_retain_object_default(const void *ptr) {
  function _Block_release_object_default (line 186) | static void _Block_release_object_default(const void *ptr) {
  function _Block_assign_weak_default (line 190) | static void _Block_assign_weak_default(const void *ptr, void *dest) {
  function _Block_memmove_default (line 194) | static void _Block_memmove_default(void *dst, void *src, unsigned long s...
  function _Block_memmove_gc_broken (line 198) | static void _Block_memmove_gc_broken(void *dest, void *src, unsigned lon...
  function _Block_use_GC (line 231) | void _Block_use_GC( void *(*alloc)(const unsigned long, const bool isOne...
  function _Block_use_GC5 (line 254) | void _Block_use_GC5( void *(*alloc)(const unsigned long, const bool isOn...
  function _Block_use_RR (line 270) | void _Block_use_RR( void (*retain)(const void *),
  type Block_layout (line 286) | struct Block_layout
  type Block_layout (line 294) | struct Block_layout
  type Block_layout (line 314) | struct Block_layout
  type Block_layout (line 332) | struct Block_layout
  function _Block_byref_assign_copy (line 368) | static void _Block_byref_assign_copy(void *dest, const void *arg, const ...
  function _Block_byref_release (line 414) | static void _Block_byref_release(const void *arg) {
  function _Block_release (line 459) | void _Block_release(void *arg) {
  function _Block_destroy (line 487) | static void _Block_destroy(const void *arg) {
  function Block_size (line 513) | unsigned long int Block_size(void *arg) {
  function _Block_object_assign (line 560) | void _Block_object_assign(void *destAddr, const void *object, const int ...
  function _Block_object_dispose (line 593) | void _Block_object_dispose(const void *object, const int flags) {
  type Block_layout (line 621) | struct Block_layout
  type Block_layout (line 621) | struct Block_layout
  type Block_descriptor (line 673) | struct Block_descriptor
  type Block_byref (line 687) | struct Block_byref

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_activation.cc
  type __asan (line 23) | namespace __asan {
    type AsanDeactivatedFlags (line 25) | struct AsanDeactivatedFlags {
      method RegisterActivationFlags (line 32) | void RegisterActivationFlags(FlagParser *parser, Flags *f, CommonFla...
      method OverrideFromActivationFlags (line 44) | void OverrideFromActivationFlags() {
      method Print (line 77) | void Print() {
    function AsanDeactivate (line 91) | void AsanDeactivate() {
    function AsanActivate (line 118) | void AsanActivate() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_activation.h
  function namespace (line 18) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_allocator.cc
  type __asan (line 32) | namespace __asan {
    function u32 (line 36) | static u32 RZLog2Size(u32 rz_log) {
    function u32 (line 41) | static u32 RZSize2Log(u32 rz_size) {
    type ChunkHeader (line 71) | struct ChunkHeader {
    type ChunkBase (line 89) | struct ChunkBase : ChunkHeader {
    type AsanChunk (line 109) | struct AsanChunk: ChunkBase {
      method uptr (line 110) | uptr Beg() { return reinterpret_cast<uptr>(this) + kChunkHeaderSize; }
      method uptr (line 111) | uptr UsedSize(bool locked_version = false) {
      method AddrIsInside (line 126) | bool AddrIsInside(uptr addr, bool locked_version = false) {
    type QuarantineCallback (line 131) | struct QuarantineCallback {
      method QuarantineCallback (line 132) | explicit QuarantineCallback(AllocatorCache *cache)
      method Recycle (line 136) | void Recycle(AsanChunk *m) {
      method Deallocate (line 166) | void Deallocate(void *p) {
    function AllocatorCache (line 197) | AllocatorCache *GetAllocatorCache(AsanThreadLocalMallocStorage *ms) {
    function QuarantineCache (line 202) | QuarantineCache *GetQuarantineCache(AsanThreadLocalMallocStorage *ms) {
    type Allocator (line 224) | struct Allocator {
      method Allocator (line 242) | explicit Allocator(LinkerInitialized)
      method CheckOptions (line 246) | void CheckOptions(const AllocatorOptions &options) const {
      method SharedInitCode (line 254) | void SharedInitCode(const AllocatorOptions &options) {
      method Initialize (line 264) | void Initialize(const AllocatorOptions &options) {
      method ReInitialize (line 269) | void ReInitialize(const AllocatorOptions &options) {
      method GetOptions (line 274) | void GetOptions(AllocatorOptions *options) const {
      method uptr (line 284) | uptr ComputeRZLog(uptr user_requested_size) {
      method AsanChunk (line 299) | AsanChunk *ChooseChunk(uptr addr, AsanChunk *left_chunk,
      method AtomicallySetQuarantineFlag (line 460) | void AtomicallySetQuarantineFlag(AsanChunk *m, void *ptr,
      method QuarantineChunk (line 472) | void QuarantineChunk(AsanChunk *m, void *ptr, BufferedStackTrace *st...
      method Deallocate (line 512) | void Deallocate(void *ptr, uptr delete_size, BufferedStackTrace *stack,
      method ReportInvalidFree (line 565) | void ReportInvalidFree(void *ptr, u8 chunk_state, BufferedStackTrace...
      method CommitBack (line 572) | void CommitBack(AsanThreadLocalMallocStorage *ms) {
      method AsanChunk (line 581) | AsanChunk *GetAsanChunk(void *alloc_beg) {
      method AsanChunk (line 594) | AsanChunk *GetAsanChunkByAddr(uptr p) {
      method AsanChunk (line 600) | AsanChunk *GetAsanChunkByAddrFastLocked(uptr p) {
      method uptr (line 606) | uptr AllocationSize(uptr p) {
      method AsanChunkView (line 614) | AsanChunkView FindHeapChunkByAddress(uptr addr) {
      method PrintStats (line 634) | void PrintStats() {
      method ForceLock (line 638) | void ForceLock() {
      method ForceUnlock (line 643) | void ForceUnlock() {
    function AsanAllocator (line 651) | static AsanAllocator &get_allocator() {
    function uptr (line 658) | uptr AsanChunkView::Beg() { return chunk_->Beg(); }
    function uptr (line 659) | uptr AsanChunkView::End() { return Beg() + UsedSize(); }
    function uptr (line 660) | uptr AsanChunkView::UsedSize() { return chunk_->UsedSize(); }
    function uptr (line 661) | uptr AsanChunkView::AllocTid() { return chunk_->alloc_tid; }
    function uptr (line 662) | uptr AsanChunkView::FreeTid() { return chunk_->free_tid; }
    function StackTrace (line 664) | static StackTrace GetStackTraceFromId(u32 id) {
    function StackTrace (line 671) | StackTrace AsanChunkView::GetAllocStack() {
    function StackTrace (line 675) | StackTrace AsanChunkView::GetFreeStack() {
    function InitializeAllocator (line 679) | void InitializeAllocator(const AllocatorOptions &options) {
    function ReInitializeAllocator (line 683) | void ReInitializeAllocator(const AllocatorOptions &options) {
    function GetAllocatorOptions (line 687) | void GetAllocatorOptions(AllocatorOptions *options) {
    function AsanChunkView (line 691) | AsanChunkView FindHeapChunkByAddress(uptr addr) {
    function PrintInternalAllocatorStats (line 699) | void PrintInternalAllocatorStats() {
    function asan_free (line 708) | void asan_free(void *ptr, BufferedStackTrace *stack, AllocType alloc_t...
    function asan_sized_free (line 712) | void asan_sized_free(void *ptr, uptr size, BufferedStackTrace *stack,
    function asan_posix_memalign (line 749) | int asan_posix_memalign(void **memptr, uptr alignment, uptr size,
    function uptr (line 757) | uptr asan_malloc_usable_size(void *ptr, uptr pc, uptr bp) {
    function uptr (line 767) | uptr asan_mz_size(const void *ptr) {
    function asan_mz_force_lock (line 771) | void asan_mz_force_lock() {
    function asan_mz_force_unlock (line 775) | void asan_mz_force_unlock() {
    function AsanSoftRssLimitExceededCallback (line 779) | void AsanSoftRssLimitExceededCallback(bool exceeded) {
  type __lsan (line 786) | namespace __lsan {
    function LockAllocator (line 787) | void LockAllocator() {
    function UnlockAllocator (line 791) | void UnlockAllocator() {
    function GetAllocatorGlobalRange (line 795) | void GetAllocatorGlobalRange(uptr *begin, uptr *end) {
    function uptr (line 800) | uptr PointsIntoChunk(void* p) {
    function uptr (line 815) | uptr GetUserBegin(uptr chunk) {
    function ChunkTag (line 830) | ChunkTag LsanMetadata::tag() const {
    function uptr (line 840) | uptr LsanMetadata::requested_size() const {
    function u32 (line 845) | u32 LsanMetadata::stack_trace_id() const {
    function ForEachChunk (line 850) | void ForEachChunk(ForEachChunkCallback callback, void *arg) {
    function IgnoreObjectResult (line 854) | IgnoreObjectResult IgnoreObjectLocked(const void *p) {
  function uptr (line 874) | uptr __sanitizer_get_estimated_allocated_size(uptr size) {
  function __sanitizer_get_ownership (line 878) | int __sanitizer_get_ownership(const void *p) {
  function uptr (line 883) | uptr __sanitizer_get_allocated_size(const void *p) {
  function SANITIZER_INTERFACE_ATTRIBUTE (line 898) | SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 903) | SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_allocator.h
  type AllocType (line 26) | enum AllocType {
  type AsanChunk (line 32) | struct AsanChunk
  type AllocatorOptions (line 34) | struct AllocatorOptions {
  function class (line 49) | class AsanChunkView {
  function class (line 92) | class AsanChunkFifoList: public IntrusiveList<AsanChunk> {
  type AsanMapUnmapCallback (line 108) | struct AsanMapUnmapCallback {
  type DefaultSizeClassMap (line 126) | typedef DefaultSizeClassMap SizeClassMap;
  type SizeClassAllocator64 (line 127) | typedef SizeClassAllocator64<kAllocatorSpace, kAllocatorSize, 0 /*metada...
  type TwoLevelByteMap (line 135) | typedef TwoLevelByteMap<(kNumRegions >> 12), 1 << 12> ByteMap;
  type CompactSizeClassMap (line 137) | typedef CompactSizeClassMap SizeClassMap;
  type SizeClassAllocatorLocalCache (line 145) | typedef SizeClassAllocatorLocalCache<PrimaryAllocator> AllocatorCache;
  type LargeMmapAllocator (line 146) | typedef LargeMmapAllocator<AsanMapUnmapCallback> SecondaryAllocator;
  type CombinedAllocator (line 147) | typedef CombinedAllocator<PrimaryAllocator, AllocatorCache,
  type AsanThreadLocalMallocStorage (line 151) | struct AsanThreadLocalMallocStorage {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_debugging.cc
  type __asan (line 23) | namespace __asan {
    function GetInfoForStackVar (line 25) | void GetInfoForStackVar(uptr addr, AddressDescription *descr, AsanThre...
    function GetInfoForHeapAddress (line 50) | void GetInfoForHeapAddress(uptr addr, AddressDescription *descr) {
    function AsanLocateAddress (line 67) | void AsanLocateAddress(uptr addr, AddressDescription *descr) {
    function uptr (line 84) | static uptr AsanGetStack(uptr addr, uptr *trace, u32 size, u32 *thread...
  function SANITIZER_INTERFACE_ATTRIBUTE (line 115) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 125) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 130) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 135) | SANITIZER_INTERFACE_ATTRIBUTE

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_fake_stack.cc
  type __asan (line 19) | namespace __asan {
    function ALWAYS_INLINE (line 30) | ALWAYS_INLINE void SetShadow(uptr ptr, uptr size, uptr class_id, u64 m...
    function FakeStack (line 45) | FakeStack *FakeStack::Create(uptr stack_size_log) {
    function FakeFrame (line 88) | FakeFrame *FakeStack::Allocate(uptr stack_size_log, uptr class_id,
    function uptr (line 116) | uptr FakeStack::AddrIsInFakeStack(uptr ptr, uptr *frame_beg, uptr *fra...
    function NOINLINE (line 142) | NOINLINE void FakeStack::GC(uptr real_stack) {
    function FakeStack (line 177) | FakeStack *GetTLSFakeStack() {
    function SetTLSFakeStack (line 180) | void SetTLSFakeStack(FakeStack *fs) {
    function FakeStack (line 184) | FakeStack *GetTLSFakeStack() { return 0; }
    function SetTLSFakeStack (line 185) | void SetTLSFakeStack(FakeStack *fs) { }
    function FakeStack (line 188) | static FakeStack *GetFakeStack() {
    function FakeStack (line 194) | static FakeStack *GetFakeStackFast() {
    function ALWAYS_INLINE (line 202) | ALWAYS_INLINE uptr OnMalloc(uptr class_id, uptr size) {
    function ALWAYS_INLINE (line 214) | ALWAYS_INLINE void OnFree(uptr ptr, uptr class_id, uptr size) {
  function SANITIZER_INTERFACE_ATTRIBUTE (line 245) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 248) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 264) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 277) | SANITIZER_INTERFACE_ATTRIBUTE

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_fake_stack.h
  function namespace (line 20) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_flags.cc
  type __asan (line 26) | namespace __asan {
    function RegisterAsanFlags (line 51) | static void RegisterAsanFlags(FlagParser *parser, Flags *f) {
    function InitializeFlags (line 58) | void InitializeFlags() {
  function SANITIZER_INTERFACE_ATTRIBUTE (line 168) | SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_flags.h
  function namespace (line 30) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_globals.cc
  type __asan (line 29) | namespace __asan {
    type ListOfGlobals (line 33) | struct ListOfGlobals {
    type DynInitGlobal (line 43) | struct DynInitGlobal {
    type GlobalRegistrationSite (line 52) | struct GlobalRegistrationSite {
    function ALWAYS_INLINE (line 59) | ALWAYS_INLINE void PoisonShadowForGlobal(const Global *g, u8 value) {
    function ALWAYS_INLINE (line 63) | ALWAYS_INLINE void PoisonRedZones(const Global &g) {
    function IsAddressNearGlobal (line 78) | static bool IsAddressNearGlobal(uptr addr, const __asan_global &g) {
    function ReportGlobal (line 84) | static void ReportGlobal(const Global &g, const char *prefix) {
    function u32 (line 95) | static u32 FindRegistrationSite(const Global *g) {
    function GetGlobalsForAddress (line 106) | int GetGlobalsForAddress(uptr addr, Global *globals, u32 *reg_sites,
    function GetInfoForAddressIfGlobal (line 126) | bool GetInfoForAddressIfGlobal(uptr addr, AddressDescription *descr) {
    function RegisterGlobal (line 141) | static void RegisterGlobal(const Global *g) {
    function UnregisterGlobal (line 180) | static void UnregisterGlobal(const Global *g) {
    function StopInitOrderChecking (line 195) | void StopInitOrderChecking() {
  function __asan_register_globals (line 216) | void __asan_register_globals(__asan_global *globals, uptr n) {
  function __asan_unregister_globals (line 237) | void __asan_unregister_globals(__asan_global *globals, uptr n) {
  function __asan_before_dynamic_init (line 249) | void __asan_before_dynamic_init(const char *module_name) {
  function __asan_after_dynamic_init (line 275) | void __asan_after_dynamic_init() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_interceptors.cc
  type __asan (line 36) | namespace __asan {
    function QuickCheckForUnpoisonedRegion (line 39) | static inline bool QuickCheckForUnpoisonedRegion(uptr beg, uptr size) {
    type AsanInterceptorContext (line 48) | struct AsanInterceptorContext {
    function RangesOverlap (line 98) | static inline bool RangesOverlap(const char *offset1, uptr length1,
    function uptr (line 112) | static inline uptr MaybeRealStrnlen(const char *s, uptr maxlen) {
    function SetThreadName (line 121) | void SetThreadName(const char *name) {
    function OnExit (line 127) | int OnExit() {
    function InitializeAsanInterceptors (line 735) | void InitializeAsanInterceptors() {
  type ThreadStartParam (line 216) | struct ThreadStartParam {
  function thread_return_t (line 221) | static thread_return_t THREAD_CALLING_CONV asan_thread_start(void *arg) {
  function INTERCEPTOR (line 232) | INTERCEPTOR(int, pthread_create, void *thread,
  function INTERCEPTOR (line 263) | INTERCEPTOR(int, pthread_join, void *t, void **arg) {
  function INTERCEPTOR (line 273) | INTERCEPTOR(void*, bsd_signal, int signum, void *handler) {
  function INTERCEPTOR (line 281) | INTERCEPTOR(void*, signal, int signum, void *handler) {
  function INTERCEPTOR (line 288) | INTERCEPTOR(int, sigaction, int signum, const struct sigaction *act,
  type __sanitizer (line 296) | namespace __sanitizer {
    function real_sigaction (line 297) | int real_sigaction(int signum, const void *act, void *oldact) {
  type sigaction (line 305) | struct sigaction
  type sigaction (line 306) | struct sigaction
  function ClearShadowMemoryForContextStack (line 310) | static void ClearShadowMemoryForContextStack(uptr stack, uptr ssize) {
  function INTERCEPTOR (line 322) | INTERCEPTOR(int, swapcontext, struct ucontext_t *oucp,
  function INTERCEPTOR (line 345) | INTERCEPTOR(void, longjmp, void *env, int val) {
  function INTERCEPTOR (line 351) | INTERCEPTOR(void, _longjmp, void *env, int val) {
  function INTERCEPTOR (line 358) | INTERCEPTOR(void, siglongjmp, void *env, int val) {
  function INTERCEPTOR (line 365) | INTERCEPTOR(void, __cxa_throw, void *a, void *b, void *c) {
  function INTERCEPTOR (line 428) | INTERCEPTOR(void*, memmove, void *to, const void *from, uptr size) {
  function INTERCEPTOR (line 434) | INTERCEPTOR(void*, memcpy, void *to, const void *from, uptr size) {
  function INTERCEPTOR (line 450) | INTERCEPTOR(void*, memset, void *block, int c, uptr size) {
  function INTERCEPTOR (line 456) | INTERCEPTOR(char*, strchr, const char *str, int c) {
  function INTERCEPTOR (line 491) | INTERCEPTOR(char*, strcat, char *to, const char *from) {  // NOLINT
  function INTERCEPTOR (line 512) | INTERCEPTOR(char*, strncat, char *to, const char *from, uptr size) {
  function INTERCEPTOR (line 531) | INTERCEPTOR(char*, strcpy, char *to, const char *from) {  // NOLINT
  function INTERCEPTOR (line 553) | INTERCEPTOR(char*, strdup, const char *s) {
  function INTERCEPTOR (line 569) | INTERCEPTOR(SIZE_T, strlen, const char *s) {
  function INTERCEPTOR (line 586) | INTERCEPTOR(SIZE_T, wcslen, const wchar_t *s) {
  function INTERCEPTOR (line 597) | INTERCEPTOR(char*, strncpy, char *to, const char *from, uptr size) {
  function INTERCEPTOR (line 611) | INTERCEPTOR(uptr, strnlen, const char *s, uptr maxlen) {
  function INTERCEPTOR (line 623) | INTERCEPTOR(long, strtol, const char *nptr,  // NOLINT
  function INTERCEPTOR (line 637) | INTERCEPTOR(int, atoi, const char *nptr) {
  function INTERCEPTOR (line 658) | INTERCEPTOR(long, atol, const char *nptr) {  // NOLINT
  function INTERCEPTOR (line 676) | INTERCEPTOR(long long, strtoll, const char *nptr,  // NOLINT
  function INTERCEPTOR (line 690) | INTERCEPTOR(long long, atoll, const char *nptr) {  // NOLINT
  function AtCxaAtexit (line 705) | static void AtCxaAtexit(void *unused) {
  function INTERCEPTOR (line 711) | INTERCEPTOR(int, __cxa_atexit, void (*func)(void *), void *arg,
  function INTERCEPTOR (line 724) | INTERCEPTOR(int, fork, void) {
  type __asan (line 734) | namespace __asan {
    function QuickCheckForUnpoisonedRegion (line 39) | static inline bool QuickCheckForUnpoisonedRegion(uptr beg, uptr size) {
    type AsanInterceptorContext (line 48) | struct AsanInterceptorContext {
    function RangesOverlap (line 98) | static inline bool RangesOverlap(const char *offset1, uptr length1,
    function uptr (line 112) | static inline uptr MaybeRealStrnlen(const char *s, uptr maxlen) {
    function SetThreadName (line 121) | void SetThreadName(const char *name) {
    function OnExit (line 127) | int OnExit() {
    function InitializeAsanInterceptors (line 735) | void InitializeAsanInterceptors() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_interceptors.h
  function namespace (line 112) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_interface_internal.h
  type __asan_global_source_location (line 40) | struct __asan_global_source_location {
  type __asan_global (line 47) | struct __asan_global {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_internal.h
  function namespace (line 58) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_linux.cc
  type __asan (line 69) | namespace __asan {
    function InitializePlatformInterceptors (line 71) | void InitializePlatformInterceptors() {}
    function AsanCheckDynamicRTPrereqs (line 80) | void AsanCheckDynamicRTPrereqs() {}
    function AsanCheckIncompatibleRT (line 81) | void AsanCheckIncompatibleRT() {}
    function FindFirstDSOCallback (line 83) | static int FindFirstDSOCallback(struct dl_phdr_info *info, size_t size,
    function IsDynamicRTName (line 97) | static bool IsDynamicRTName(const char *libname) {
    function ReportIncompatibleRT (line 102) | static void ReportIncompatibleRT() {
    function AsanCheckDynamicRTPrereqs (line 107) | void AsanCheckDynamicRTPrereqs() {
    function AsanCheckIncompatibleRT (line 122) | void AsanCheckIncompatibleRT() {
    function ReadContextStack (line 154) | void ReadContextStack(void *context, uptr *stack, uptr *ssize) {
    function ReadContextStack (line 160) | void ReadContextStack(void *context, uptr *stack, uptr *ssize) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_mac.cc
  type __asan (line 39) | namespace __asan {
    function InitializePlatformInterceptors (line 41) | void InitializePlatformInterceptors() {}
    function PlatformHasDifferentMemcpyAndMemmove (line 43) | bool PlatformHasDifferentMemcpyAndMemmove() {
    function AsanCheckDynamicRTPrereqs (line 58) | void AsanCheckDynamicRTPrereqs() {}
    function AsanCheckIncompatibleRT (line 61) | void AsanCheckIncompatibleRT() {}
    function ReadContextStack (line 63) | void ReadContextStack(void *context, uptr *stack, uptr *ssize) {
    function ALWAYS_INLINE (line 110) | ALWAYS_INLINE
    function asan_dispatch_call_block_and_release (line 125) | void asan_dispatch_call_block_and_release(void *block) {
  function asan_block_context_t (line 145) | asan_block_context_t *alloc_asan_context(void *ctxt, dispatch_function_t...
  function INTERCEPTOR (line 175) | INTERCEPTOR(void, dispatch_after_f, dispatch_time_t when,
  function INTERCEPTOR (line 188) | INTERCEPTOR(void, dispatch_group_async_f, dispatch_group_t group,
  function INTERCEPTOR (line 223) | INTERCEPTOR(void, dispatch_async,
  function INTERCEPTOR (line 230) | INTERCEPTOR(void, dispatch_group_async,
  function INTERCEPTOR (line 237) | INTERCEPTOR(void, dispatch_after,
  function INTERCEPTOR (line 244) | INTERCEPTOR(void, dispatch_source_set_cancel_handler,
  function INTERCEPTOR (line 255) | INTERCEPTOR(void, dispatch_source_set_event_handler,

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_malloc_linux.cc
  function IsInCallocPool (line 32) | static bool IsInCallocPool(const void *ptr) {
  function INTERCEPTOR (line 37) | INTERCEPTOR(void, free, void *ptr) {
  function INTERCEPTOR (line 44) | INTERCEPTOR(void, cfree, void *ptr) {
  function INTERCEPTOR (line 51) | INTERCEPTOR(void*, malloc, uptr size) {
  function INTERCEPTOR (line 56) | INTERCEPTOR(void*, calloc, uptr nmemb, uptr size) {
  function INTERCEPTOR (line 70) | INTERCEPTOR(void*, realloc, void *ptr, uptr size) {
  function INTERCEPTOR (line 82) | INTERCEPTOR(void*, memalign, uptr boundary, uptr size) {
  function INTERCEPTOR (line 87) | INTERCEPTOR(void*, aligned_alloc, uptr boundary, uptr size) {
  function INTERCEPTOR (line 92) | INTERCEPTOR(void*, __libc_memalign, uptr boundary, uptr size) {
  function INTERCEPTOR (line 99) | INTERCEPTOR(uptr, malloc_usable_size, void *ptr) {
  type fake_mallinfo (line 109) | struct fake_mallinfo {
  function INTERCEPTOR (line 113) | INTERCEPTOR(struct fake_mallinfo, mallinfo, void) {
  function INTERCEPTOR (line 119) | INTERCEPTOR(int, mallopt, int cmd, int value) {
  function INTERCEPTOR (line 123) | INTERCEPTOR(int, posix_memalign, void **memptr, uptr alignment, uptr siz...
  function INTERCEPTOR (line 129) | INTERCEPTOR(void*, valloc, uptr size) {
  function INTERCEPTOR (line 134) | INTERCEPTOR(void*, pvalloc, uptr size) {
  function INTERCEPTOR (line 139) | INTERCEPTOR(void, malloc_stats, void) {
  type MallocDebugK (line 147) | struct MallocDebugK {
  type MallocDebugL (line 156) | struct MallocDebugL {
  type __asan (line 179) | namespace __asan {
    function ReplaceSystemMalloc (line 180) | void ReplaceSystemMalloc() {
    function ReplaceSystemMalloc (line 198) | void ReplaceSystemMalloc() {
  type __asan (line 197) | namespace __asan {
    function ReplaceSystemMalloc (line 180) | void ReplaceSystemMalloc() {
    function ReplaceSystemMalloc (line 198) | void ReplaceSystemMalloc() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_malloc_win.cc
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 40) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 46) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 51) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 56) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 62) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 67) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 73) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 78) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 83) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 89) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 95) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 105) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 112) | ALLOCATION_FUNCTION_ATTRIBUTE
  function ALLOCATION_FUNCTION_ATTRIBUTE (line 119) | ALLOCATION_FUNCTION_ATTRIBUTE
  function _CrtDbgReport (line 127) | int _CrtDbgReport(int, const char*, int,
  function _CrtDbgReportW (line 132) | int _CrtDbgReportW(int reportType, const wchar_t*, int,
  function _CrtSetReportMode (line 137) | int _CrtSetReportMode(int, int) {
  type __asan (line 142) | namespace __asan {
    function ReplaceSystemMalloc (line 143) | void ReplaceSystemMalloc() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_mapping.h
  function namespace (line 213) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_new_delete.cc
  type std (line 36) | namespace std {
    type nothrow_t (line 37) | struct nothrow_t {}
  function CXX_OPERATOR_ATTRIBUTE (line 61) | CXX_OPERATOR_ATTRIBUTE
  function CXX_OPERATOR_ATTRIBUTE (line 63) | CXX_OPERATOR_ATTRIBUTE
  function CXX_OPERATOR_ATTRIBUTE (line 65) | CXX_OPERATOR_ATTRIBUTE
  function CXX_OPERATOR_ATTRIBUTE (line 68) | CXX_OPERATOR_ATTRIBUTE
  function INTERCEPTOR (line 73) | INTERCEPTOR(void *, _Znwm, size_t size) {
  function INTERCEPTOR (line 76) | INTERCEPTOR(void *, _Znam, size_t size) {
  function INTERCEPTOR (line 79) | INTERCEPTOR(void *, _ZnwmRKSt9nothrow_t, size_t size, std::nothrow_t con...
  function INTERCEPTOR (line 82) | INTERCEPTOR(void *, _ZnamRKSt9nothrow_t, size_t size, std::nothrow_t con...
  function CXX_OPERATOR_ATTRIBUTE (line 92) | CXX_OPERATOR_ATTRIBUTE
  function CXX_OPERATOR_ATTRIBUTE (line 96) | CXX_OPERATOR_ATTRIBUTE
  function CXX_OPERATOR_ATTRIBUTE (line 100) | CXX_OPERATOR_ATTRIBUTE
  function CXX_OPERATOR_ATTRIBUTE (line 104) | CXX_OPERATOR_ATTRIBUTE
  function CXX_OPERATOR_ATTRIBUTE (line 108) | CXX_OPERATOR_ATTRIBUTE
  function CXX_OPERATOR_ATTRIBUTE (line 113) | CXX_OPERATOR_ATTRIBUTE
  function INTERCEPTOR (line 120) | INTERCEPTOR(void, _ZdlPv, void *ptr) {
  function INTERCEPTOR (line 123) | INTERCEPTOR(void, _ZdaPv, void *ptr) {
  function INTERCEPTOR (line 126) | INTERCEPTOR(void, _ZdlPvRKSt9nothrow_t, void *ptr, std::nothrow_t const&) {
  function INTERCEPTOR (line 129) | INTERCEPTOR(void, _ZdaPvRKSt9nothrow_t, void *ptr, std::nothrow_t const&) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_poisoning.cc
  type __asan (line 22) | namespace __asan {
    function SetCanPoisonMemory (line 26) | void SetCanPoisonMemory(bool value) {
    function CanPoisonMemory (line 30) | bool CanPoisonMemory() {
    function PoisonShadow (line 34) | void PoisonShadow(uptr addr, uptr size, u8 value) {
    function PoisonShadowPartialRightRedzone (line 44) | void PoisonShadowPartialRightRedzone(uptr addr,
    type ShadowSegmentEndpoint (line 54) | struct ShadowSegmentEndpoint {
      method ShadowSegmentEndpoint (line 59) | explicit ShadowSegmentEndpoint(uptr address) {
    function FlushUnneededASanShadowMemory (line 66) | void FlushUnneededASanShadowMemory(uptr p, uptr size) {
    function AsanPoisonOrUnpoisonIntraObjectRedzone (line 75) | void AsanPoisonOrUnpoisonIntraObjectRedzone(uptr ptr, uptr size, bool ...
  function __asan_poison_memory_region (line 111) | void __asan_poison_memory_region(void const volatile *addr, uptr size) {
  function __asan_unpoison_memory_region (line 151) | void __asan_unpoison_memory_region(void const volatile *addr, uptr size) {
  function __asan_address_is_poisoned (line 181) | int __asan_address_is_poisoned(void const volatile *addr) {
  function uptr (line 185) | uptr __asan_region_is_poisoned(uptr beg, uptr size) {
  function SANITIZER_INTERFACE_ATTRIBUTE (line 226) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 232) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 238) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 244) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 250) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 256) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 262) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 270) | SANITIZER_INTERFACE_ATTRIBUTE
  function PoisonAlignedStackMemory (line 294) | static void PoisonAlignedStackMemory(uptr addr, uptr size, bool do_poiso...
  function __asan_poison_stack_memory (line 317) | void __asan_poison_stack_memory(uptr addr, uptr size) {
  function __asan_unpoison_stack_memory (line 322) | void __asan_unpoison_stack_memory(uptr addr, uptr size) {
  function __sanitizer_annotate_contiguous_container (line 327) | void __sanitizer_annotate_contiguous_container(const void *beg_p,
  function __sanitizer_verify_contiguous_container (line 411) | int __sanitizer_verify_contiguous_container(const void *beg_p,
  function SANITIZER_INTERFACE_ATTRIBUTE (line 418) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 423) | SANITIZER_INTERFACE_ATTRIBUTE
  type __lsan (line 429) | namespace __lsan {
    function WordIsPoisoned (line 430) | bool WordIsPoisoned(uptr addr) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_poisoning.h
  function namespace (line 20) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_posix.cc
  type __asan (line 34) | namespace __asan {
    function AsanOnDeadlySignal (line 36) | void AsanOnDeadlySignal(int signo, void *siginfo, void *context) {
    function AsanTSDInit (line 90) | void AsanTSDInit(void (*destructor)(void *tsd)) {
    function AsanTSDSet (line 101) | void AsanTSDSet(void *tsd) {
    function PlatformTSDDtor (line 106) | void PlatformTSDDtor(void *tsd) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_report.cc
  type __asan (line 27) | namespace __asan {
    type ReportData (line 37) | struct ReportData {
    function AppendToErrorMessageBuffer (line 50) | void AppendToErrorMessageBuffer(const char *buffer) {
    class Decorator (line 68) | class Decorator: public __sanitizer::SanitizerCommonDecorator {
      method Decorator (line 70) | Decorator() : SanitizerCommonDecorator() { }
    function PrintMemoryByte (line 119) | static void PrintMemoryByte(InternalScopedString *str, const char *bef...
    function PrintShadowByte (line 128) | static void PrintShadowByte(InternalScopedString *str, const char *bef...
    function PrintShadowBytes (line 133) | static void PrintShadowBytes(InternalScopedString *str, const char *be...
    function PrintLegend (line 147) | static void PrintLegend(InternalScopedString *str) {
    function MaybeDumpInstructionBytes (line 189) | void MaybeDumpInstructionBytes(uptr pc) {
    function PrintShadowMemoryForAddress (line 205) | static void PrintShadowMemoryForAddress(uptr addr) {
    function PrintZoneForPointer (line 221) | static void PrintZoneForPointer(uptr ptr, uptr zone_ptr,
    function DescribeThread (line 236) | static void DescribeThread(AsanThread *t) {
    function IsASCII (line 243) | static bool IsASCII(unsigned char c) {
    function PrintGlobalNameIfASCII (line 260) | static void PrintGlobalNameIfASCII(InternalScopedString *str,
    function PrintGlobalLocation (line 280) | static void PrintGlobalLocation(InternalScopedString *str,
    function DescribeAddressRelativeToGlobal (line 291) | static void DescribeAddressRelativeToGlobal(uptr addr, uptr size,
    function DescribeAddressIfGlobal (line 317) | static bool DescribeAddressIfGlobal(uptr addr, uptr size,
    function DescribeAddressIfShadow (line 338) | bool DescribeAddressIfShadow(uptr addr, AddressDescription *descr, boo...
    function PrintAccessAndVarIntersection (line 378) | static void PrintAccessAndVarIntersection(const StackVarDescr &var, up...
    function ParseFrameDescription (line 421) | bool ParseFrameDescription(const char *frame_descr,
    function DescribeAddressIfStack (line 448) | bool DescribeAddressIfStack(uptr addr, uptr access_size) {
    function DescribeAccessToHeapChunk (line 513) | static void DescribeAccessToHeapChunk(AsanChunkView chunk, uptr addr,
    function DescribeHeapAddress (line 539) | void DescribeHeapAddress(uptr addr, uptr access_size) {
    function DescribeAddress (line 580) | static void DescribeAddress(uptr addr, uptr access_size, const char *b...
    function DescribeThread (line 595) | void DescribeThread(AsanThreadContext *context) {
    class ScopedInErrorReport (line 629) | class ScopedInErrorReport {
      method ScopedInErrorReport (line 631) | explicit ScopedInErrorReport(ReportData *report = nullptr,
      method StartReporting (line 717) | void StartReporting(ReportData *report) {
    function ReportStackOverflow (line 740) | void ReportStackOverflow(const SignalContext &sig) {
    function ReportDeadlySignal (line 755) | void ReportDeadlySignal(const char *description, const SignalContext &...
    function ReportDoubleFree (line 775) | void ReportDoubleFree(uptr addr, BufferedStackTrace *free_stack) {
    function ReportNewDeleteSizeMismatch (line 793) | void ReportNewDeleteSizeMismatch(uptr addr, uptr delete_size,
    function ReportFreeNotMalloced (line 817) | void ReportFreeNotMalloced(uptr addr, BufferedStackTrace *free_stack) {
    function ReportAllocTypeMismatch (line 834) | void ReportAllocTypeMismatch(uptr addr, BufferedStackTrace *free_stack,
    function ReportMallocUsableSizeNotOwned (line 857) | void ReportMallocUsableSizeNotOwned(uptr addr, BufferedStackTrace *sta...
    function ReportSanitizerGetAllocatedSizeNotOwned (line 870) | void ReportSanitizerGetAllocatedSizeNotOwned(uptr addr,
    function ReportStringFunctionMemoryRangesOverlap (line 884) | void ReportStringFunctionMemoryRangesOverlap(const char *function,
    function ReportStringFunctionSizeOverflow (line 903) | void ReportStringFunctionSizeOverflow(uptr offset, uptr size,
    function ReportBadParamsToAnnotateContiguousContainer (line 916) | void ReportBadParamsToAnnotateContiguousContainer(uptr beg, uptr end,
    function ReportODRViolation (line 934) | void ReportODRViolation(const __asan_global *g1, u32 stack_id1,
    function NOINLINE (line 964) | static NOINLINE void
    function INLINE (line 979) | static INLINE void CheckForInvalidPointerPair(void *p1, void *p2) {
    function ReportMacMzReallocUnknown (line 994) | void ReportMacMzReallocUnknown(uptr addr, uptr zone_ptr, const char *z...
    function SuppressErrorReport (line 1007) | static bool SuppressErrorReport(uptr pc) {
    function ReportGenericError (line 1019) | void ReportGenericError(uptr pc, uptr bp, uptr sp, uptr addr, bool is_...
  function __asan_report_error (line 1121) | void __asan_report_error(uptr pc, uptr bp, uptr sp, uptr addr, int is_wr...
  function __asan_set_error_report_callback (line 1128) | void NOINLINE __asan_set_error_report_callback(void (*callback)(const ch...
  function __asan_describe_address (line 1133) | void __asan_describe_address(uptr addr) {
  function __asan_report_present (line 1140) | int __asan_report_present() {
  function uptr (line 1144) | uptr __asan_get_report_pc() {
  function uptr (line 1148) | uptr __asan_get_report_bp() {
  function uptr (line 1152) | uptr __asan_get_report_sp() {
  function uptr (line 1156) | uptr __asan_get_report_address() {
  function __asan_get_report_access_type (line 1160) | int __asan_get_report_access_type() {
  function uptr (line 1164) | uptr __asan_get_report_access_size() {
  function SANITIZER_INTERFACE_ATTRIBUTE (line 1173) | SANITIZER_INTERFACE_ATTRIBUTE
  function SANITIZER_INTERFACE_ATTRIBUTE (line 1177) | SANITIZER_INTERFACE_ATTRIBUTE
  function __asan_on_error (line 1187) | void __asan_on_error() {}

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_report.h
  function namespace (line 19) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_rtl.cc
  type __asan (line 38) | namespace __asan {
    function AsanDie (line 42) | static void AsanDie() {
    function AsanCheckFailed (line 62) | static void AsanCheckFailed(const char *file, int line, const char *cond,
    function ShowStatsAndAbort (line 80) | void ShowStatsAndAbort() {
    function ReserveShadowMemoryRange (line 88) | void ReserveShadowMemoryRange(uptr beg, uptr end, const char *name) {
    function OnLowLevelAllocate (line 106) | static void OnLowLevelAllocate(uptr ptr, uptr size) {
    function NOINLINE (line 204) | NOINLINE INTERFACE_ATTRIBUTE
    function NOINLINE (line 213) | NOINLINE INTERFACE_ATTRIBUTE
    function NOINLINE (line 222) | NOINLINE INTERFACE_ATTRIBUTE
    function NOINLINE (line 231) | NOINLINE INTERFACE_ATTRIBUTE
    function NOINLINE (line 240) | NOINLINE INTERFACE_ATTRIBUTE
    function NOINLINE (line 249) | NOINLINE INTERFACE_ATTRIBUTE
    function NOINLINE (line 262) | static NOINLINE void force_interface_symbols() {
    function asan_atexit (line 308) | static void asan_atexit() {
    function InitializeHighMemEnd (line 318) | static void InitializeHighMemEnd() {
    function ProtectGap (line 328) | static void ProtectGap(uptr addr, uptr size) {
    function PrintAddressSpaceLayout (line 354) | static void PrintAddressSpaceLayout() {
    function AsanInitInternal (line 404) | static void AsanInitInternal() {
    function AsanInitFromRtl (line 560) | void AsanInitFromRtl() {
    class AsanInitializer (line 568) | class AsanInitializer {
      method AsanInitializer (line 570) | AsanInitializer() {
  function __asan_handle_no_return (line 583) | void NOINLINE __asan_handle_no_return() {
  function __asan_set_death_callback (line 617) | void NOINLINE __asan_set_death_callback(void (*callback)(void)) {
  function __asan_init (line 623) | void __asan_init() {
  function __asan_version_mismatch_check (line 628) | void __asan_version_mismatch_check() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_stack.cc
  type __asan (line 18) | namespace __asan {
    function SetMallocContextSize (line 22) | void SetMallocContextSize(u32 size) {
    function u32 (line 26) | u32 GetMallocContextSize() {
  function SANITIZER_INTERFACE_ATTRIBUTE (line 35) | SANITIZER_INTERFACE_ATTRIBUTE

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_stack.h
  function namespace (line 23) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_stats.cc
  type __asan (line 22) | namespace __asan {
    function PrintMallocStatsArray (line 33) | static void PrintMallocStatsArray(const char *prefix,
    function MergeThreadStats (line 75) | static void MergeThreadStats(ThreadContextBase *tctx_base, void *arg) {
    function GetAccumulatedStats (line 82) | static void GetAccumulatedStats(AsanStats *stats) {
    function FlushToDeadThreadStats (line 102) | void FlushToDeadThreadStats(AsanStats *stats) {
    function FillMallocStatistics (line 108) | void FillMallocStatistics(AsanMallocStats *malloc_stats) {
    function AsanStats (line 117) | AsanStats &GetCurrentThreadStats() {
    function PrintAccumulatedStats (line 122) | static void PrintAccumulatedStats() {
  function uptr (line 139) | uptr __sanitizer_get_current_allocated_bytes() {
  function uptr (line 149) | uptr __sanitizer_get_heap_size() {
  function uptr (line 155) | uptr __sanitizer_get_free_bytes() {
  function uptr (line 168) | uptr __sanitizer_get_unmapped_bytes() {
  function __asan_print_accumulated_stats (line 172) | void __asan_print_accumulated_stats() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_stats.h
  function namespace (line 20) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_suppressions.cc
  type __asan (line 22) | namespace __asan {
    function InitializeSuppressions (line 44) | void InitializeSuppressions() {
    function IsInterceptorSuppressed (line 53) | bool IsInterceptorSuppressed(const char *interceptor_name) {
    function HaveStackTraceBasedSuppressions (line 60) | bool HaveStackTraceBasedSuppressions() {
    function IsODRViolationSuppressed (line 66) | bool IsODRViolationSuppressed(const char *global_var_name) {
    function IsStackTraceSuppressed (line 73) | bool IsStackTraceSuppressed(const StackTrace *stack) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_suppressions.h
  function namespace (line 20) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_thread.cc
  type __asan (line 26) | namespace __asan {
    type CreateThreadContextArgs (line 30) | struct CreateThreadContextArgs {
    function ThreadContextBase (line 55) | static ThreadContextBase *GetAsanThreadContext(u32 tid) {
    function ThreadRegistry (line 60) | ThreadRegistry &asanThreadRegistry() {
    function AsanThreadContext (line 76) | AsanThreadContext *GetThreadContextByTidLocked(u32 tid) {
    function AsanThread (line 83) | AsanThread *AsanThread::Create(thread_callback_t start_routine, void *...
    function FakeStack (line 125) | FakeStack *AsanThread::AsyncSignalSafeLazyInitFakeStack() {
    function thread_return_t (line 166) | thread_return_t AsanThread::ThreadStart(
    function ThreadStackContainsAddress (line 252) | static bool ThreadStackContainsAddress(ThreadContextBase *tctx_base,
    function AsanThread (line 263) | AsanThread *GetCurrentThread() {
    function SetCurrentThread (line 284) | void SetCurrentThread(AsanThread *t) {
    function u32 (line 294) | u32 GetCurrentTidOrInvalid() {
    function AsanThread (line 299) | AsanThread *FindThreadByStackAddress(uptr addr) {
    function EnsureMainThreadIDIsCorrect (line 307) | void EnsureMainThreadIDIsCorrect() {
  type __lsan (line 323) | namespace __lsan {
    function GetThreadRangesLocked (line 324) | bool GetThreadRangesLocked(uptr os_id, uptr *stack_begin, uptr *stack_...
    function ForEachExtraStackRange (line 339) | void ForEachExtraStackRange(uptr os_id, RangeIteratorCallback callback,
    function LockThreadRegistry (line 346) | void LockThreadRegistry() {
    function UnlockThreadRegistry (line 350) | void UnlockThreadRegistry() {
    function EnsureMainThreadIDIsCorrect (line 354) | void EnsureMainThreadIDIsCorrect() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_thread.h
  function namespace (line 26) | namespace __asan {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_win.cc
  function SANITIZER_INTERFACE_ATTRIBUTE (line 33) | SANITIZER_INTERFACE_ATTRIBUTE
  function __sanitizer_default_malloc_hook (line 44) | void __sanitizer_default_malloc_hook(void *ptr, uptr size) { }
  function __sanitizer_default_free_hook (line 45) | void __sanitizer_default_free_hook(void *ptr) { }
  function __asan_default_on_error (line 48) | void __asan_default_on_error() {}
  function INTERCEPTOR_WINAPI (line 58) | INTERCEPTOR_WINAPI(void, RaiseException, void *a, void *b, void *c, void...
  function INTERCEPTOR (line 64) | INTERCEPTOR(int, _except_handler3, void *a, void *b, void *c, void *d) {
  function INTERCEPTOR (line 74) | INTERCEPTOR(int, _except_handler4, void *a, void *b, void *c, void *d) {
  function thread_return_t (line 80) | static thread_return_t THREAD_CALLING_CONV asan_thread_start(void *arg) {
  function INTERCEPTOR_WINAPI (line 86) | INTERCEPTOR_WINAPI(DWORD, CreateThread,
  function EnsureWorkerThreadRegistered (line 107) | void EnsureWorkerThreadRegistered() {
  function INTERCEPTOR_WINAPI (line 125) | INTERCEPTOR_WINAPI(DWORD, NtWaitForWorkViaWorkerFactory, DWORD a, DWORD ...
  type __asan (line 137) | namespace __asan {
    function InitializePlatformInterceptors (line 139) | void InitializePlatformInterceptors() {
    function AsanTSDInit (line 157) | void AsanTSDInit(void (*destructor)(void *tsd)) {
    function AsanTSDSet (line 167) | void AsanTSDSet(void *tsd) {
    function PlatformTSDDtor (line 172) | void PlatformTSDDtor(void *tsd) {
    function AsanCheckDynamicRTPrereqs (line 185) | void AsanCheckDynamicRTPrereqs() {}
    function AsanCheckIncompatibleRT (line 187) | void AsanCheckIncompatibleRT() {}
    function ReadContextStack (line 189) | void ReadContextStack(void *context, uptr *stack, uptr *ssize) {
    function AsanOnDeadlySignal (line 193) | void AsanOnDeadlySignal(int, void *siginfo, void *context) {
    function SEHHandler (line 199) | static long WINAPI SEHHandler(EXCEPTION_POINTERS *info) {
    function SANITIZER_INTERFACE_ATTRIBUTE (line 234) | SANITIZER_INTERFACE_ATTRIBUTE

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_win_dll_thunk.cc
  function uptr (line 32) | static uptr getRealProcAddressOrDie(const char *name) {
  type FunctionInterceptor (line 54) | struct FunctionInterceptor {
    method Execute (line 55) | static void Execute() { FunctionInterceptor<LINE-1>::Execute(); }
  type FunctionInterceptor<0> (line 60) | struct FunctionInterceptor<0> {
    method Execute (line 61) | static void Execute() {}
  function __asan_init (line 206) | void __asan_init() {
  function __asan_version_mismatch_check (line 221) | void __asan_version_mismatch_check() {
  function INTERCEPTOR (line 377) | INTERCEPTOR(int, _except_handler4, void *a, void *b, void *c, void *d) {
  function InterceptHooks (line 407) | void InterceptHooks() {
  function call_asan_init (line 419) | static int call_asan_init() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/asan_win_dynamic_runtime_thunk.cc
  function UnregisterGlobals (line 69) | void UnregisterGlobals() {
  function ScheduleUnregisterGlobals (line 73) | int ScheduleUnregisterGlobals() {
  function SetSEHFilter (line 92) | static int SetSEHFilter() { return __asan_set_seh_filter(); }

FILE: atlas-aapt/external/compiler-rt/lib/asan/asanwrapper.cc
  function usage (line 11) | void usage(const char* me) {
  function env_prepend (line 20) | void env_prepend(const char* name, const char* value, const char* delim) {
  function elf_is_64bit (line 30) | bool elf_is_64bit(const char* path) {
  function main (line 51) | int main(int argc, char** argv) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/scripts/asan_symbolize.py
  function fix_filename (line 29) | def fix_filename(file_name):
  function sysroot_path_filter (line 37) | def sysroot_path_filter(binary_name):
  function guess_arch (line 40) | def guess_arch(addr):
  class Symbolizer (line 47) | class Symbolizer(object):
    method __init__ (line 48) | def __init__(self):
    method symbolize (line 51) | def symbolize(self, addr, binary, offset):
  class LLVMSymbolizer (line 67) | class LLVMSymbolizer(Symbolizer):
    method __init__ (line 68) | def __init__(self, symbolizer_path, default_arch, system, dsym_hints=[]):
    method open_llvm_symbolizer (line 76) | def open_llvm_symbolizer(self):
    method symbolize (line 95) | def symbolize(self, addr, binary, offset):
  function LLVMSymbolizerFactory (line 123) | def LLVMSymbolizerFactory(system, default_arch, dsym_hints=[]):
  class Addr2LineSymbolizer (line 133) | class Addr2LineSymbolizer(Symbolizer):
    method __init__ (line 134) | def __init__(self, binary):
    method open_addr2line (line 140) | def open_addr2line(self):
    method symbolize (line 153) | def symbolize(self, addr, binary, offset):
  class UnbufferedLineConverter (line 175) | class UnbufferedLineConverter(object):
    method __init__ (line 180) | def __init__(self, args, close_stderr=False):
    method convert (line 200) | def convert(self, line):
    method readline (line 204) | def readline(self):
  class DarwinSymbolizer (line 208) | class DarwinSymbolizer(Symbolizer):
    method __init__ (line 209) | def __init__(self, addr, binary):
    method open_atos (line 215) | def open_atos(self):
    method symbolize (line 221) | def symbolize(self, addr, binary, offset):
  class ChainSymbolizer (line 244) | class ChainSymbolizer(Symbolizer):
    method __init__ (line 245) | def __init__(self, symbolizer_list):
    method symbolize (line 249) | def symbolize(self, addr, binary, offset):
    method append_symbolizer (line 258) | def append_symbolizer(self, symbolizer):
  function BreakpadSymbolizerFactory (line 262) | def BreakpadSymbolizerFactory(binary):
  function SystemSymbolizerFactory (line 271) | def SystemSymbolizerFactory(system, addr, binary):
  class BreakpadSymbolizer (line 278) | class BreakpadSymbolizer(Symbolizer):
    method __init__ (line 279) | def __init__(self, filename):
    method parse_lines (line 294) | def parse_lines(self, lines):
    method get_sym_file_line (line 320) | def get_sym_file_line(self, addr):
    method symbolize (line 338) | def symbolize(self, addr, binary, offset):
  class SymbolizationLoop (line 352) | class SymbolizationLoop(object):
    method __init__ (line 353) | def __init__(self, binary_name_filter=None, dsym_hint_producer=None):
    method symbolize_address (line 372) | def symbolize_address(self, addr, binary, offset):
    method get_symbolized_lines (line 414) | def get_symbolized_lines(self, symbolized_lines):
    method process_logfile (line 424) | def process_logfile(self):
    method process_line_echo (line 430) | def process_line_echo(self, line):
    method process_line_posix (line 433) | def process_line_posix(self, line):

FILE: atlas-aapt/external/compiler-rt/lib/asan/scripts/symbolize.py
  function patch_address (line 21) | def patch_address(frameno, addr_s):
  function android_get_load_address (line 36) | def android_get_load_address(path):
  function postprocess_file_name (line 53) | def postprocess_file_name(file_name, paths_to_cut):
  function symbolize_addr2line (line 61) | def symbolize_addr2line(line, binary_prefix, paths_to_cut):

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_asm_test.cc
  function TestAsmWrite (line 129) | void TestAsmWrite(const char *DeathPattern) {
  function TestAsmRead (line 152) | void TestAsmRead(const char *DeathPattern) {
  function U4 (line 172) | U4 AsmLoad(U4 *a) {
  function AsmStore (line 178) | void AsmStore(U4 r, U4 *a) {
  function TestAsmRepMovs (line 183) | void TestAsmRepMovs(const char *DeathPatternRead,
  function TEST (line 206) | TEST(AddressSanitizer, asm_load_store) {
  function TEST (line 213) | TEST(AddressSanitizer, asm_rw) {
  function TEST (line 231) | TEST(AddressSanitizer, asm_flags) {
  function TEST (line 256) | TEST(AddressSanitizer, asm_rep_movs) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_benchmarks_test.cc
  function ManyAccessFunc (line 18) | __attribute__((noinline))
  function TEST (line 44) | TEST(AddressSanitizer, ManyAccessBenchmark) {
  function BorderAccessFunc (line 52) | __attribute__((noinline))
  function TEST (line 66) | TEST(AddressSanitizer, BorderAccessBenchmark) {
  function FunctionWithLargeStack (line 72) | static void FunctionWithLargeStack() {
  function TEST (line 77) | TEST(AddressSanitizer, FakeStackBenchmark) {
  function main (line 82) | int main(int argc, char **argv) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_exceptions_test.cc
  class Action (line 5) | class Action {
    method Action (line 7) | Action() {}
    method PrintString (line 8) | void PrintString(const std::string& msg) const {
    method Throw (line 11) | void Throw(const char& arg) const {
  function main (line 17) | int main() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_fake_stack_test.cc
  type __asan (line 26) | namespace __asan {
    function TEST (line 28) | TEST(FakeStack, FlagsSize) {
    function TEST (line 34) | TEST(FakeStack, RequiredSize) {
    function TEST (line 46) | TEST(FakeStack, FlagsOffset) {
    function TEST (line 63) | TEST(FakeStack, CreateDestroy) {
    function TEST (line 73) | TEST(FakeStack, ModuloNumberOfFrames) {
    function TEST (line 93) | TEST(FakeStack, GetFrame) {
    function TEST (line 106) | TEST(FakeStack, Allocate) {
    function RecursiveFunction (line 135) | static void RecursiveFunction(FakeStack *fs, int depth) {
    function TEST (line 145) | TEST(FakeStack, RecursiveStressTest) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_globals_test.cc
  function GlobalsTest (line 39) | int GlobalsTest(int zero) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_interface_test.cc
  function TEST (line 17) | TEST(AddressSanitizerInterface, GetEstimatedAllocatedSize) {
  function TEST (line 28) | TEST(AddressSanitizerInterface, GetAllocatedSizeAndOwnershipTest) {
  function TEST (line 74) | TEST(AddressSanitizerInterface, GetCurrentAllocatedBytesTest) {
  function TEST (line 89) | TEST(AddressSanitizerInterface, GetHeapSizeTest) {
  function TEST (line 120) | TEST(AddressSanitizerInterface, ManyThreadsWithStatsStressTest) {
  function DoDoubleFree (line 137) | static void DoDoubleFree() {
  function TEST (line 143) | TEST(AddressSanitizerInterface, ExitCode) {
  function MyDeathCallback (line 153) | static void MyDeathCallback() {
  function TEST (line 158) | TEST(AddressSanitizerInterface, DeathCallbackTest) {
  function TEST (line 172) | TEST(AddressSanitizerInterface, SimplePoisonMemoryRegionTest) {
  function TEST (line 190) | TEST(AddressSanitizerInterface, OverlappingPoisonMemoryRegionTest) {
  function TEST (line 211) | TEST(AddressSanitizerInterface, PushAndPopWithPoisoningTest) {
  function MakeShadowValid (line 232) | static void MakeShadowValid(bool *shadow, int length, int granularity) {
  function TEST (line 245) | TEST(AddressSanitizerInterface, PoisoningStressTest) {
  function TEST (line 284) | TEST(AddressSanitizerInterface, GlobalRedzones) {
  function TEST (line 331) | TEST(AddressSanitizerInterface, PoisonedRegion) {
  function TEST (line 361) | TEST(AddressSanitizerInterface, DISABLED_StressLargeMemset) {
  function TEST (line 370) | TEST(AddressSanitizerInterface, DISABLED_StressSmallMemset) {
  function TEST (line 380) | TEST(AddressSanitizerInterface, DISABLED_InvalidPoisonAndUnpoisonCallsTe...
  function ErrorReportCallbackOneToZ (line 398) | static void ErrorReportCallbackOneToZ(const char *report) {
  function TEST (line 406) | TEST(AddressSanitizerInterface, SetErrorReportCallbackTest) {
  function TEST (line 414) | TEST(AddressSanitizerInterface, GetOwnershipStressTest) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_mac_test.cc
  function TEST (line 22) | TEST(AddressSanitizerMac, CFAllocatorDefaultDoubleFree) {
  function CFAllocator_DoubleFreeOnPthread (line 28) | void CFAllocator_DoubleFreeOnPthread() {
  function TEST (line 34) | TEST(AddressSanitizerMac, CFAllocatorDefaultDoubleFree_ChildPhread) {
  function CFAllocator_PassMemoryToAnotherThread (line 54) | void CFAllocator_PassMemoryToAnotherThread() {
  function TEST (line 62) | TEST(AddressSanitizerMac, CFAllocator_PassMemoryToAnotherThread) {
  function TEST (line 71) | TEST(AddressSanitizerMac, DISABLED_CFAllocatorSystemDefaultDoubleFree) {
  function TEST (line 78) | TEST(AddressSanitizerMac, CFAllocatorMallocDoubleFree) {
  function TEST (line 82) | TEST(AddressSanitizerMac, DISABLED_CFAllocatorMallocZoneDoubleFree) {
  function TEST (line 89) | TEST(AddressSanitizerMac, GCDDispatchAsync) {
  function TEST (line 95) | TEST(AddressSanitizerMac, GCDDispatchSync) {
  function TEST (line 102) | TEST(AddressSanitizerMac, GCDReuseWqthreadsAsync) {
  function TEST (line 108) | TEST(AddressSanitizerMac, GCDReuseWqthreadsSync) {
  function TEST (line 114) | TEST(AddressSanitizerMac, GCDDispatchAfter) {
  function TEST (line 120) | TEST(AddressSanitizerMac, GCDSourceEvent) {
  function TEST (line 126) | TEST(AddressSanitizerMac, GCDSourceCancel) {
  function TEST (line 132) | TEST(AddressSanitizerMac, GCDGroupAsync) {
  function TEST (line 169) | TEST(AddressSanitizerMac, MallocIntrospectionLock) {
  function TEST (line 196) | TEST(AddressSanitizerMac, DISABLED_TSDWorkqueueTest) {
  function TEST (line 206) | TEST(AddressSanitizerMac, CFStringCreateCopy) {
  function TEST (line 212) | TEST(AddressSanitizerMac, NSObjectOOB) {
  function TEST (line 220) | TEST(AddressSanitizerMac, NSURLDeallocation) {
  function TEST (line 225) | TEST(AddressSanitizerMac, Mstats) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_mem_test.cc
  function MemSetOOBTestTemplate (line 16) | void MemSetOOBTestTemplate(size_t length) {
  function TEST (line 68) | TEST(AddressSanitizer, MemSetOOBTest) {
  function AllocateTwoAdjacentArrays (line 78) | static bool AllocateTwoAdjacentArrays(char **x1, char **x2, size_t size) {
  function TEST (line 105) | TEST(AddressSanitizer, LargeOOBInMemset) {
  function MemTransferOOBTestTemplate (line 123) | void MemTransferOOBTestTemplate(size_t length) {
  class MemCpyWrapper (line 184) | class MemCpyWrapper {
  function TEST (line 191) | TEST(AddressSanitizer, MemCpyOOBTest) {
  class MemMoveWrapper (line 196) | class MemMoveWrapper {
  function TEST (line 203) | TEST(AddressSanitizer, MemMoveOOBTest) {
  function TEST (line 209) | TEST(AddressSanitizer, MemCmpOOBTest) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_noinst_test.cc
  type AsanInitCaller (line 35) | struct AsanInitCaller {
    method AsanInitCaller (line 36) | AsanInitCaller() {
  function TEST (line 43) | TEST(AddressSanitizer, InternalSimpleDeathTest) {
  function MallocStress (line 47) | static void MallocStress(size_t n) {
  function TEST (line 95) | TEST(AddressSanitizer, NoInstMallocTest) {
  function TEST (line 99) | TEST(AddressSanitizer, ThreadedMallocStressTest) {
  function PrintShadow (line 112) | static void PrintShadow(const char *tag, uptr ptr, size_t size) {
  function TEST (line 127) | TEST(AddressSanitizer, DISABLED_InternalPrintShadow) {
  function TEST (line 136) | TEST(AddressSanitizer, QuarantineTest) {
  function TEST (line 171) | TEST(AddressSanitizer, ThreadedQuarantineTest) {
  function TEST (line 201) | TEST(AddressSanitizer, ThreadedOneSizeMallocStressTest) {
  function TEST (line 212) | TEST(AddressSanitizer, ShadowRegionIsPoisonedTest) {
  function TEST (line 224) | TEST(AddressSanitizer, LoadStoreCallbacks) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_oob_test.cc
  function NOINLINE (line 15) | NOINLINE void asan_write_sized_aligned(uint8_t *p, size_t size) {
  function NOINLINE (line 24) | NOINLINE void oob_test(int size, int off) {
  function OOBTest (line 33) | void OOBTest() {
  function TEST (line 69) | TEST(AddressSanitizer, OOB_char) {
  function TEST (line 73) | TEST(AddressSanitizer, OOB_int) {
  function TEST (line 77) | TEST(AddressSanitizer, OOBRightTest) {
  function TEST (line 104) | TEST(AddressSanitizer, LargeOOBRightTest) {
  function TEST (line 114) | TEST(AddressSanitizer, DISABLED_DemoOOBLeftLow) {
  function TEST (line 118) | TEST(AddressSanitizer, DISABLED_DemoOOBLeftHigh) {
  function TEST (line 122) | TEST(AddressSanitizer, DISABLED_DemoOOBRightLow) {
  function TEST (line 126) | TEST(AddressSanitizer, DISABLED_DemoOOBRightHigh) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_racy_double_free_test.cc
  function main (line 24) | int main() {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_str_test.cc
  function StrLenOOBTestTemplate (line 26) | void StrLenOOBTestTemplate(char *str, size_t length, bool is_global) {
  function TEST (line 48) | TEST(AddressSanitizer, StrLenOOBTest) {
  function TEST (line 68) | TEST(AddressSanitizer, WcsLenTest) {
  function TEST (line 81) | TEST(AddressSanitizer, StrNLenOOBTest) {
  function TEST (line 100) | TEST(AddressSanitizer, StrDupOOBTest) {
  function TEST (line 119) | TEST(AddressSanitizer, StrCpyOOBTest) {
  function TEST (line 142) | TEST(AddressSanitizer, StrNCpyOOBTest) {
  function UNUSED (line 189) | UNUSED static void RunStrChrTest(PointerToStrChr1 StrChr) {
  function UNUSED (line 205) | UNUSED static void RunStrChrTest(PointerToStrChr2 StrChr) {
  function TEST (line 222) | TEST(AddressSanitizer, StrChrAndIndexOOBTest) {
  function TEST (line 230) | TEST(AddressSanitizer, StrCmpAndFriendsLogicTest) {
  function RunStrCmpTest (line 282) | void RunStrCmpTest(PointerToStrCmp StrCmp) {
  function TEST (line 306) | TEST(AddressSanitizer, StrCmpOOBTest) {
  function TEST (line 311) | TEST(AddressSanitizer, StrCaseCmpOOBTest) {
  function RunStrNCmpTest (line 317) | void RunStrNCmpTest(PointerToStrNCmp StrNCmp) {
  function TEST (line 343) | TEST(AddressSanitizer, StrNCmpOOBTest) {
  function TEST (line 348) | TEST(AddressSanitizer, StrNCaseCmpOOBTest) {
  function TEST (line 353) | TEST(AddressSanitizer, StrCatOOBTest) {
  function TEST (line 388) | TEST(AddressSanitizer, StrNCatOOBTest) {
  function string (line 424) | static string OverlapErrorMessage(const string &func) {
  function TEST (line 428) | TEST(AddressSanitizer, StrArgsOverlapTest) {
  function RunAtoiOOBTest (line 495) | void RunAtoiOOBTest(PointerToCallAtoi Atoi) {
  function CallAtoi (line 515) | void CallAtoi(const char *nptr) {
  function CallAtol (line 518) | void CallAtol(const char *nptr) {
  function CallAtoll (line 521) | void CallAtoll(const char *nptr) {
  function TEST (line 524) | TEST(AddressSanitizer, AtoiAndFriendsOOBTest) {
  function RunStrtolOOBTest (line 533) | void RunStrtolOOBTest(PointerToCallStrtol Strtol) {
  function CallStrtol (line 559) | void CallStrtol(const char *nptr, char **endptr, int base) {
  function CallStrtoll (line 562) | void CallStrtoll(const char *nptr, char **endptr, int base) {
  function TEST (line 565) | TEST(AddressSanitizer, StrtollOOBTest) {
  function TEST (line 568) | TEST(AddressSanitizer, StrtolOOBTest) {

FILE: atlas-aapt/external/compiler-rt/lib/asan/tests/asan_test.cc
  function NOINLINE (line 15) | NOINLINE void *malloc_fff(size_t size) {
  function NOINLINE (line 17) | NOINLINE void *malloc_eee(size_t size) {
  function NOINLINE (line 19) | NOINLINE void *malloc_ddd(size_t size) {
  function NOINLINE (line 21) | NOINLINE void *malloc_ccc(size_t size) {
  function NOINLINE (line 23) | NOINLINE void *malloc_bbb(size_t size) {
  function NOINLINE (line 25) | NOINLINE void *malloc_aaa(size_t size) {
  function NOINLINE (line 28) | NOINLINE void free_ccc(void *p) { free(p); break_optimization(0);}
  function NOINLINE (line 29) | NOINLINE void free_bbb(void *p) { free_ccc(p); break_optimization(0);}
  function NOINLINE (line 30) | NOINLINE void free_aaa(void *p) { free_bbb(p); break_optimization(0);}
  function NOINLINE (line 33) | NOINLINE void uaf_test(int size, int off) {
  function TEST (line 43) | TEST(AddressSanitizer, HasFeatureAddressSanitizerTest) {
  function TEST (line 54) | TEST(AddressSanitizer, SimpleDeathTest) {
  function TEST (line 58) | TEST(AddressSanitizer, VariousMallocsTest) {
  function TEST (line 91) | TEST(AddressSanitizer, CallocTest) {
  function TEST (line 97) | TEST(AddressSanitizer, CallocReturnsZeroMem) {
  function TEST (line 121) | TEST(AddressSanitizer, VallocTest) {
  function TEST (line 129) | TEST(AddressSanitizer, PvallocTest) {
  function TSDDestructor (line 151) | void TSDDestructor(void *tsd) {
  function TEST (line 165) | TEST(AddressSanitizer, DISABLED_TSDTest) {
  function TEST (line 175) | TEST(AddressSanitizer, UAF_char) {
  function TEST (line 184) | TEST(AddressSanitizer, UAF_long_double) {
  type Packed5 (line 193) | struct Packed5 {
  type Packed5 (line 199) | struct Packed5 {
  function TEST (line 206) | TEST(AddressSanitizer, UAF_Packed5) {
  function TEST (line 215) | TEST(AddressSanitizer, IgnoreTest) {
  type StructWithBitField (line 222) | struct StructWithBitField {
  function TEST (line 229) | TEST(AddressSanitizer, BitFieldPositiveTest) {
  type StructWithBitFields_8_24 (line 238) | struct StructWithBitFields_8_24 {
  function TEST (line 243) | TEST(AddressSanitizer, BitFieldNegativeTest) {
  function TEST (line 256) | TEST(AddressSanitizer, WildAddressTest) {
  function my_sigaction_sighandler (line 261) | void my_sigaction_sighandler(int, siginfo_t*, void*) {
  function my_signal_sighandler (line 266) | void my_signal_sighandler(int signum) {
  function TEST (line 271) | TEST(AddressSanitizer, SignalTest) {
  function TestLargeMalloc (line 290) | static void TestLargeMalloc(size_t size) {
  function TEST (line 296) | TEST(AddressSanitizer, LargeMallocTest) {
  function TEST (line 303) | TEST(AddressSanitizer, HugeMallocTest) {
  function MemalignRun (line 312) | void MemalignRun(size_t align, size_t size, int idx) {
  function TEST (line 318) | TEST(AddressSanitizer, memalign) {
  function TEST (line 338) | TEST(AddressSanitizer, ManyThreadsTest) {
  function TEST (line 350) | TEST(AddressSanitizer, ReallocTest) {
  function TEST (line 368) | TEST(AddressSanitizer, ReallocFreedPointerTest) {
  function TEST (line 375) | TEST(AddressSanitizer, ReallocInvalidPointerTest) {
  function TEST (line 381) | TEST(AddressSanitizer, ZeroSizeMallocTest) {
  function TEST (line 405) | TEST(AddressSanitizer, MallocUsableSizeTest) {
  function WrongFree (line 421) | void WrongFree() {
  function TEST (line 429) | TEST(AddressSanitizer, WrongFreeTest) {
  function DoubleFree (line 437) | void DoubleFree() {
  function TEST (line 447) | TEST(AddressSanitizer, DoubleFreeTest) {
  function NOINLINE (line 457) | NOINLINE void SizedStackTest() {
  function TEST (line 472) | TEST(AddressSanitizer, SimpleStackTest) {
  function TEST (line 493) | TEST(AddressSanitizer, ManyStackObjectsTest) {
  function NOINLINE (line 506) | NOINLINE static void Frame0(int frame, char *a, char *b, char *c) {
  function NOINLINE (line 516) | NOINLINE static void Frame1(int frame, char *a, char *b) {
  function NOINLINE (line 520) | NOINLINE static void Frame2(int frame, char *a) {
  function NOINLINE (line 524) | NOINLINE static void Frame3(int frame) {
  function TEST (line 529) | TEST(AddressSanitizer, GuiltyStackFrame0Test) {
  function TEST (line 532) | TEST(AddressSanitizer, GuiltyStackFrame1Test) {
  function TEST (line 535) | TEST(AddressSanitizer, GuiltyStackFrame2Test) {
  function TEST (line 538) | TEST(AddressSanitizer, GuiltyStackFrame3Test) {
  function NOINLINE (line 543) | NOINLINE void LongJmpFunc1(jmp_buf buf) {
  function NOINLINE (line 554) | NOINLINE void TouchStackFunc() {
  function TEST (line 562) | TEST(AddressSanitizer, LongJmpTest) {
  function NOINLINE (line 572) | NOINLINE void UnderscopeLongJmpFunc1(jmp_buf buf) {
  function NOINLINE (line 583) | NOINLINE void SigLongJmpFunc1(sigjmp_buf buf) {
  function NOINLINE (line 598) | NOINLINE void BuiltinLongJmpFunc1(jmp_buf buf) {
  function TEST (line 611) | TEST(AddressSanitizer, BuiltinLongJmpTest) {
  function TEST (line 623) | TEST(AddressSanitizer, UnderscopeLongJmpTest) {
  function TEST (line 632) | TEST(AddressSanitizer, SigLongJmpTest) {
  function NOINLINE (line 644) | NOINLINE void ThrowFunc() {
  function TEST (line 655) | TEST(AddressSanitizer, CxxExceptionTest) {
  function TEST (line 683) | TEST(AddressSanitizer, ThreadStackReuseTest) {
  function TEST (line 693) | TEST(AddressSanitizer, Store128Test) {
  function string (line 711) | string RightOOBErrorMessage(int oob_distance, bool is_write) {
  function string (line 726) | string RightOOBWriteMessage(int oob_distance) {
  function string (line 730) | string RightOOBReadMessage(int oob_distance) {
  function string (line 750) | string LeftOOBWriteMessage(int oob_distance) {
  function string (line 754) | string LeftOOBReadMessage(int oob_distance) {
  function string (line 758) | string LeftOOBAccessMessage(int oob_distance) {
  function TEST (line 787) | TEST(AddressSanitizer, pread) {
  function TEST (line 791) | TEST(AddressSanitizer, pread64) {
  function TEST (line 795) | TEST(AddressSanitizer, read) {
  function TEST (line 802) | TEST(AddressSanitizer, DISABLED_MemIntrinsicUnalignedAccessTest) {
  function NOINLINE (line 812) | NOINLINE static int LargeFunction(bool do_bad_access) {
  function TEST (line 844) | TEST(AddressSanitizer, DISABLED_LargeFunctionSymbolizeTest) {
  function TEST (line 852) | TEST(AddressSanitizer, DISABLED_MallocFreeUnwindAndSymbolizeTest) {
  function TryToSetThreadName (line 860) | static bool TryToSetThreadName(const char *name) {
  function ThreadedTestSpawn (line 889) | void ThreadedTestSpawn() {
  function TEST (line 901) | TEST(AddressSanitizer, ThreadedTest) {
  function TEST (line 926) | TEST(AddressSanitizer, ThreadNamesTest) {
  function TEST (line 935) | TEST(AddressSanitizer, ShadowGapTest) {
  function NOINLINE (line 950) | NOINLINE static void UseThenFreeThenUse() {
  function TEST (line 958) | TEST(AddressSanitizer, UseThenFreeThenUseTest) {
  function TEST (line 962) | TEST(AddressSanitizer, StrDupTest) {
  function TEST (line 971) | TEST(AddressSanitizer, GlobalTest) {
  function TEST (line 1020) | TEST(AddressSanitizer, GlobalStringConstTest) {
  function TEST (line 1026) | TEST(AddressSanitizer, FileNameInGlobalReportTest) {
  function TEST (line 1039) | TEST(AddressSanitizer, LocalReferenceR
Copy disabled (too large) Download .json
Condensed preview — 4239 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (41,600K chars).
[
  {
    "path": ".github/ISSUE_TEMPLATE.md",
    "chars": 296,
    "preview": "请按照下面的规则提交您的issue,符合标准的issue会被优先处理,\n请先查看有没有同类型的issue已经存在.\n\n1. demo问题的issue格式: [demo]:title\n\n   title尽量反应问题的状况,如果是编译问题或者无"
  },
  {
    "path": ".gitignore",
    "chars": 759,
    "preview": "*.iml\n.gradle\n.idea/\n/local.properties\n/.idea/workspace.xml\n/.idea/libraries\n!.idea/codeStyleSettings.xml\n.DS_Store\n#/bu"
  },
  {
    "path": ".gitmodules",
    "chars": 501,
    "preview": "[submodule \"atlas-aapt/build\"]\n\tpath = atlas-aapt/build\n\turl = https://android.googlesource.com/platform/build\n[submodul"
  },
  {
    "path": "CONTRIBUTING.md",
    "chars": 2790,
    "preview": "# Atlas Contributing Guide\n\nWelcome to create [Pull Requests](https://github.com/alibaba/atlas/compare) or open [Issues]"
  },
  {
    "path": "LICENSE",
    "chars": 11357,
    "preview": "                                 Apache License\n                           Version 2.0, January 2004\n                   "
  },
  {
    "path": "NOTICE",
    "chars": 540,
    "preview": "Atlas-Framework\nCopyright 2016 Alibaba Group\n\nThis product includes software developed at Alibaba Group. (http://www.ali"
  },
  {
    "path": "README.md",
    "chars": 3247,
    "preview": "# Atlas\n\n[![license](http://img.shields.io/badge/license-Apache2.0-brightgreen.svg?style=flat)](https://github.com/aliba"
  },
  {
    "path": "_config.yml",
    "chars": 26,
    "preview": "theme: jekyll-theme-cayman"
  },
  {
    "path": "atlas-aapt/.gitignore",
    "chars": 55,
    "preview": ".idea/\n.ccache/\nout/\nout-x86_64/\nout-x86/\nShakaAaptBin/"
  },
  {
    "path": "atlas-aapt/CMakeLists.txt",
    "chars": 3090,
    "preview": "cmake_minimum_required(VERSION 3.3)\nproject(ShakaAapt)\n\nset(CMAKE_CXX_FLAGS \"${CMAKE_CXX_FLAGS} -std=c++11\")\n\nset(AAPTRO"
  },
  {
    "path": "atlas-aapt/Makefile",
    "chars": 87,
    "preview": "### DO NOT EDIT THIS FILE ###\ninclude build/core/main.mk\n### DO NOT EDIT THIS FILE ###\n"
  },
  {
    "path": "atlas-aapt/README.md",
    "chars": 1136,
    "preview": "# atlas-aapt\n\nThis project base on [ShakaAapt](https://github.com/rover12421/ShakaAapt),which strip the necessary aapt c"
  },
  {
    "path": "atlas-aapt/README.zh-cn.md",
    "chars": 537,
    "preview": "## atlas-aapt\n\n此项目基于[ShakaAapt](https://github.com/rover12421/ShakaAapt),该项目抽离了AOSP——android-7.0.0_r6中编译aapt的必要代码。\n\n## 编"
  },
  {
    "path": "atlas-aapt/UpdateAndroidSource.sh",
    "chars": 1227,
    "preview": "#! /bin/bash\nSRCROOT=/Develop/android/source/android-last\nDESROOT=.\n\narray=( \\\n\tbionic/libc/include \\\n\texternal/compiler"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/alloca.h",
    "chars": 1506,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/android/api-level.h",
    "chars": 1638,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/android/dlext.h",
    "chars": 5472,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n *\n * Licensed under the Apache License, Version 2.0 (the \"Lice"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/android/legacy_errno_inlines.h",
    "chars": 1675,
    "preview": "/*\n * Copyright (C) 2015 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/android/legacy_signal_inlines.h",
    "chars": 3236,
    "preview": "/*\n * Copyright (C) 2015 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/android/legacy_stdlib_inlines.h",
    "chars": 2355,
    "preview": "/*\n * Copyright (C) 2015 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/android/legacy_sys_atomics_inlines.h",
    "chars": 2807,
    "preview": "/*\n * Copyright (C) 2015 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/android/legacy_sys_stat_inlines.h",
    "chars": 1708,
    "preview": "/*\n * Copyright (C) 2015 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/android/legacy_termios_inlines.h",
    "chars": 3094,
    "preview": "/*\n * Copyright (C) 2015 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/android/set_abort_message.h",
    "chars": 1591,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/ar.h",
    "chars": 2782,
    "preview": "/*\t$OpenBSD: ar.h,v 1.3 2003/06/02 19:34:12 millert Exp $\t*/\n/*\t$NetBSD: ar.h,v 1.4 1994/10/26 00:55:43 cgd Exp $\t*/\n\n/*"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/arpa/inet.h",
    "chars": 2063,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/arpa/nameser.h",
    "chars": 24537,
    "preview": "/*\t$NetBSD: nameser.h,v 1.25 2009/04/12 17:07:34 christos Exp $\t*/\n\n/*\n * Portions Copyright (C) 2004, 2005, 2008, 2009 "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/arpa/nameser_compat.h",
    "chars": 6419,
    "preview": "/*\t$NetBSD: nameser_compat.h,v 1.1.1.2 2004/11/07 01:28:27 christos Exp $\t*/\n\n/* Copyright (c) 1983, 1989\n *    The Rege"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/arpa/telnet.h",
    "chars": 10305,
    "preview": "/*\n * Copyright (c) 1983, 1993\n *\tThe Regents of the University of California.  All rights reserved.\n *\n * Redistributio"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/assert.h",
    "chars": 2743,
    "preview": "/*\t$OpenBSD: assert.h,v 1.12 2006/01/31 10:53:51 hshoexer Exp $\t*/\n/*\t$NetBSD: assert.h,v 1.6 1994/10/26 00:55:44 cgd Ex"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/bits/lockf.h",
    "chars": 1729,
    "preview": "/*\n * Copyright (C) 2016 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/bits/posix_limits.h",
    "chars": 7747,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/bits/pthread_types.h",
    "chars": 1730,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/bits/timespec.h",
    "chars": 1729,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/bits/wchar_limits.h",
    "chars": 1717,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/byteswap.h",
    "chars": 1589,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/ctype.h",
    "chars": 3614,
    "preview": "/*\t$OpenBSD: ctype.h,v 1.19 2005/12/13 00:35:22 millert Exp $\t*/\n/*\t$NetBSD: ctype.h,v 1.14 1994/10/26 00:55:47 cgd Exp "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/dirent.h",
    "chars": 3391,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/dlfcn.h",
    "chars": 2763,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/elf.h",
    "chars": 5836,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/endian.h",
    "chars": 1486,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/err.h",
    "chars": 2513,
    "preview": "/*\t$OpenBSD: err.h,v 1.10 2006/01/06 18:53:04 millert Exp $\t*/\n/*\t$NetBSD: err.h,v 1.11 1994/10/26 00:55:52 cgd Exp $\t*/"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/errno.h",
    "chars": 1987,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/error.h",
    "chars": 1765,
    "preview": "/*\n * Copyright (C) 2015 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/fcntl.h",
    "chars": 4880,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/features.h",
    "chars": 1550,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/fnmatch.h",
    "chars": 2151,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/fts.h",
    "chars": 5084,
    "preview": "/*\t$OpenBSD: fts.h,v 1.12 2009/08/27 16:19:27 millert Exp $\t*/\n/*\t$NetBSD: fts.h,v 1.5 1994/12/28 01:41:50 mycroft Exp $"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/ftw.h",
    "chars": 2515,
    "preview": "/* $NetBSD: ftw.h,v 1.1 2005/12/30 23:07:33 agc Exp $ */\n\n/*\tFrom OpenBSD: ftw.h,v 1.1 2003/07/21 21:13:18 millert Exp \t"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/getopt.h",
    "chars": 2748,
    "preview": "/*\t$NetBSD: getopt.h,v 1.4 2000/07/07 10:43:54 ad Exp $\t*/\n/*\t$FreeBSD$ */\n\n/*-\n * Copyright (c) 2000 The NetBSD Foundat"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/grp.h",
    "chars": 3064,
    "preview": "/*\t$OpenBSD: grp.h,v 1.8 2005/12/13 00:35:22 millert Exp $\t*/\n/*\t$NetBSD: grp.h,v 1.7 1995/04/29 05:30:40 cgd Exp $\t*/\n\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/ifaddrs.h",
    "chars": 1967,
    "preview": "/*\n * Copyright (C) 2015 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/inttypes.h",
    "chars": 9669,
    "preview": "/*\t$OpenBSD: inttypes.h,v 1.9 2006/01/15 00:47:51 millert Exp $\t*/\n\n/*\n * Copyright (c) 1997, 2005 Todd C. Miller <Todd."
  },
  {
    "path": "atlas-aapt/bionic/libc/include/lastlog.h",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "atlas-aapt/bionic/libc/include/libgen.h",
    "chars": 2339,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/limits.h",
    "chars": 2906,
    "preview": "/*\t$OpenBSD: limits.h,v 1.13 2005/12/31 19:29:38 millert Exp $\t*/\n/*\t$NetBSD: limits.h,v 1.7 1994/10/26 00:56:00 cgd Exp"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/link.h",
    "chars": 2385,
    "preview": "/*\n * Copyright (C) 2012 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/locale.h",
    "chars": 3709,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/machine/endian.h",
    "chars": 1607,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/machine/ieee.h",
    "chars": 3671,
    "preview": "/*\t$OpenBSD: ieee.h,v 1.4 2011/11/08 17:06:51 deraadt Exp $\t*/\n/*\t$NetBSD: ieee.h,v 1.2 2001/02/21 17:43:50 bjh21 Exp $\t"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/malloc.h",
    "chars": 2608,
    "preview": "/*\n * Copyright (C) 2012 The Android Open Source Project\n *\n * Licensed under the Apache License, Version 2.0 (the \"Lice"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/memory.h",
    "chars": 20,
    "preview": "#include <string.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/mntent.h",
    "chars": 1911,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/net/ethernet.h",
    "chars": 1512,
    "preview": "/*\n * Copyright (C) 2011 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/net/ethertypes.h",
    "chars": 17253,
    "preview": "/*\t$NetBSD: ethertypes.h,v 1.17 2005/12/10 23:21:38 elad Exp $\t*/\n\n/*\n * Copyright (c) 1982, 1986, 1993\n *\tThe Regents o"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/net/if.h",
    "chars": 1828,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/net/if_arp.h",
    "chars": 50,
    "preview": "#include <sys/socket.h>\n#include <linux/if_arp.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/net/if_ether.h",
    "chars": 7755,
    "preview": "/*\t$NetBSD: if_ether.h,v 1.43 2006/11/24 01:04:30 rpaulo Exp $\t*/\n\n/*\n * Copyright (c) 1982, 1986, 1993\n *\tThe Regents o"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/net/if_ieee1394.h",
    "chars": 4305,
    "preview": "/*\t$NetBSD: if_ieee1394.h,v 1.6 2005/12/10 23:21:38 elad Exp $\t*/\n\n/*\n * Copyright (c) 2000 The NetBSD Foundation, Inc.\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/net/if_packet.h",
    "chars": 29,
    "preview": "#include <linux/if_packet.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/net/if_types.h",
    "chars": 13912,
    "preview": "/*\t$NetBSD: if_types.h,v 1.26 2012/08/05 21:21:41 wiz Exp $\t*/\n\n/*\n * Copyright (c) 1989, 1993, 1994\n *\tThe Regents of t"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/net/route.h",
    "chars": 1554,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netdb.h",
    "chars": 10102,
    "preview": "/*-\n * Copyright (c) 1980, 1983, 1988, 1993\n *\tThe Regents of the University of California.  All rights reserved.\n *\n * "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/ether.h",
    "chars": 1424,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/icmp6.h",
    "chars": 27145,
    "preview": "/*\t$NetBSD: icmp6.h,v 1.47 2013/07/01 12:43:15 christos Exp $\t*/\n/*\t$KAME: icmp6.h,v 1.84 2003/04/23 10:26:51 itojun Exp"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/if_ether.h",
    "chars": 1567,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/in.h",
    "chars": 1916,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/in6.h",
    "chars": 4263,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/in_systm.h",
    "chars": 2407,
    "preview": "/*\t$NetBSD: in_systm.h,v 1.13 2005/12/10 23:36:23 elad Exp $\t*/\n\n/*\n * Copyright (c) 1982, 1986, 1993\n *\tThe Regents of "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/ip.h",
    "chars": 8270,
    "preview": "/*\t$OpenBSD: ip.h,v 1.12 2006/04/27 02:19:32 tedu Exp $\t*/\n/*\t$NetBSD: ip.h,v 1.9 1995/05/15 01:22:44 cgd Exp $\t*/\n\n/*\n "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/ip6.h",
    "chars": 10756,
    "preview": "/*\t$NetBSD: ip6.h,v 1.23 2007/12/25 18:33:46 perry Exp $\t*/\n/*\t$KAME: ip6.h,v 1.45 2003/06/05 04:46:38 keiichi Exp $\t*/\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/ip_icmp.h",
    "chars": 8480,
    "preview": "/*\t$OpenBSD: ip_icmp.h,v 1.21 2005/07/31 03:30:55 pascoe Exp $\t*/\n/*\t$NetBSD: ip_icmp.h,v 1.10 1996/02/13 23:42:28 chris"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/tcp.h",
    "chars": 2149,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netinet/udp.h",
    "chars": 1904,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/netpacket/packet.h",
    "chars": 29,
    "preview": "#include <linux/if_packet.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/nsswitch.h",
    "chars": 6761,
    "preview": "/*\t$NetBSD: nsswitch.h,v 1.21 2011/07/17 20:54:34 joerg Exp $\t*/\n\n/*-\n * Copyright (c) 1997, 1998, 1999, 2004 The NetBSD"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/paths.h",
    "chars": 2010,
    "preview": "/*\n * Copyright (c) 1989, 1993\n *\tThe Regents of the University of California.  All rights reserved.\n *\n * Redistributio"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/poll.h",
    "chars": 3290,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/pthread.h",
    "chars": 11921,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/pty.h",
    "chars": 1698,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/pwd.h",
    "chars": 5276,
    "preview": "/*-\n * Copyright (c) 1989, 1993\n *\tThe Regents of the University of California.  All rights reserved.\n * (c) UNIX System"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/regex.h",
    "chars": 3719,
    "preview": "/*\t$OpenBSD: regex.h,v 1.6 2003/06/02 19:34:12 millert Exp $\t*/\n/*\t$NetBSD: regex.h,v 1.4.6.1 1996/06/10 18:57:07 explor"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/resolv.h",
    "chars": 2152,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sched.h",
    "chars": 5415,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/search.h",
    "chars": 1112,
    "preview": "/*-\n * Written by J.T. Conklin <jtc@netbsd.org>\n * Public domain.\n *\n *\t$NetBSD: search.h,v 1.12 1999/02/22 10:34:28 chr"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/semaphore.h",
    "chars": 2009,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/setjmp.h",
    "chars": 2472,
    "preview": "/*\t$OpenBSD: setjmp.h,v 1.5 2005/12/13 00:35:22 millert Exp $\t*/\n/*\t$NetBSD: setjmp.h,v 1.11 1994/12/20 10:35:44 cgd Exp"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sgtty.h",
    "chars": 1942,
    "preview": "/*\t$NetBSD: sgtty.h,v 1.8 2005/02/03 04:39:32 perry Exp $\t*/\n\n/*\n * Copyright (c) 1985, 1993\n *\tThe Regents of the Unive"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/signal.h",
    "chars": 4654,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/stdatomic.h",
    "chars": 19660,
    "preview": "/*-\n * Copyright (c) 2011 Ed Schouten <ed@FreeBSD.org>\n *                    David Chisnall <theraven@FreeBSD.org>\n * Al"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/stdint.h",
    "chars": 6640,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/stdio.h",
    "chars": 14480,
    "preview": "/*\t$OpenBSD: stdio.h,v 1.35 2006/01/13 18:10:09 miod Exp $\t*/\n/*\t$NetBSD: stdio.h,v 1.18 1996/04/25 18:29:21 jtc Exp $\t*"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/stdio_ext.h",
    "chars": 1871,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/stdlib.h",
    "chars": 6312,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/string.h",
    "chars": 12471,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/strings.h",
    "chars": 2794,
    "preview": "/*\t$NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $\t*/\n\n/*-\n * Copyright (c) 1998 The NetBSD Foundation, Inc.\n "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/_errdefs.h",
    "chars": 10411,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/_sigdefs.h",
    "chars": 3070,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/_system_properties.h",
    "chars": 6720,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/atomics.h",
    "chars": 1944,
    "preview": "/*\n * Copyright (C) 2015 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/auxv.h",
    "chars": 1599,
    "preview": "/*\n * Copyright (C) 2013 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/cachectl.h",
    "chars": 1598,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/capability.h",
    "chars": 1725,
    "preview": "/*\n * Copyright (C) 2013 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/cdefs.h",
    "chars": 15704,
    "preview": "/*\t$NetBSD: cdefs.h,v 1.58 2004/12/11 05:59:00 christos Exp $\t*/\n\n/*\n * Copyright (c) 1991, 1993\n *\tThe Regents of the U"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/endian.h",
    "chars": 3314,
    "preview": "/*-\n * Copyright (c) 1997 Niklas Hallqvist.  All rights reserved.\n *\n * Redistribution and use in source and binary form"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/epoll.h",
    "chars": 2667,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/errno.h",
    "chars": 19,
    "preview": "#include <errno.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/eventfd.h",
    "chars": 1828,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/fcntl.h",
    "chars": 19,
    "preview": "#include <fcntl.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/file.h",
    "chars": 1585,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/fsuid.h",
    "chars": 1603,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/glibc-syscalls.h",
    "chars": 63695,
    "preview": "/* Generated by gensyscalls.py. Do not edit. */\n#ifndef _BIONIC_GLIBC_SYSCALLS_H_\n#define _BIONIC_GLIBC_SYSCALLS_H_\n#if "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/inotify.h",
    "chars": 1884,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/ioctl.h",
    "chars": 1840,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/ioctl_compat.h",
    "chars": 7061,
    "preview": "/*\t$NetBSD: ioctl_compat.h,v 1.15 2005/12/03 17:10:46 christos Exp $\t*/\n\n/*\n * Copyright (c) 1990, 1993\n *\tThe Regents o"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/ipc.h",
    "chars": 1608,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/klog.h",
    "chars": 1953,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/limits.h",
    "chars": 4468,
    "preview": "/* $OpenBSD: limits.h,v 1.6 2005/12/13 00:35:23 millert Exp $ */\n/*\n * Copyright (c) 2002 Marc Espie.\n *\n * Redistributi"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/mman.h",
    "chars": 2698,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/mount.h",
    "chars": 1831,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/msg.h",
    "chars": 1489,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/param.h",
    "chars": 1870,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/personality.h",
    "chars": 1620,
    "preview": "/*\n * Copyright (C) 2012 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/poll.h",
    "chars": 18,
    "preview": "#include <poll.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/prctl.h",
    "chars": 1582,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/procfs.h",
    "chars": 1867,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/ptrace.h",
    "chars": 2436,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/queue.h",
    "chars": 18990,
    "preview": "/*\n * Copyright (c) 1991, 1993\n *\tThe Regents of the University of California.  All rights reserved.\n *\n * Redistributio"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/reboot.h",
    "chars": 1864,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/reg.h",
    "chars": 2173,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/resource.h",
    "chars": 2209,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/select.h",
    "chars": 2908,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/sem.h",
    "chars": 1489,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/sendfile.h",
    "chars": 1858,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/signal.h",
    "chars": 20,
    "preview": "#include <signal.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/signalfd.h",
    "chars": 1657,
    "preview": "/*\n * Copyright (C) 2013 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/socket.h",
    "chars": 9120,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/socketcalls.h",
    "chars": 3018,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/stat.h",
    "chars": 5768,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/statfs.h",
    "chars": 21,
    "preview": "#include <sys/vfs.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/statvfs.h",
    "chars": 1966,
    "preview": "/*\n * Copyright (C) 2013 The Android Open Source Project\n *\n * Licensed under the Apache License, Version 2.0 (the \"Lice"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/swap.h",
    "chars": 1754,
    "preview": "/*\n * Copyright (C) 2013 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/syscall.h",
    "chars": 1677,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/sysconf.h",
    "chars": 7949,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/sysinfo.h",
    "chars": 1699,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/syslimits.h",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/syslog.h",
    "chars": 20,
    "preview": "#include <syslog.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/sysmacros.h",
    "chars": 1885,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/system_properties.h",
    "chars": 3846,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/time.h",
    "chars": 3508,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/timerfd.h",
    "chars": 1949,
    "preview": "/*\n * Copyright (C) 2013 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/times.h",
    "chars": 1607,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/timex.h",
    "chars": 1646,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/ttychars.h",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/ttydefaults.h",
    "chars": 3786,
    "preview": "/*\t$NetBSD: ttydefaults.h,v 1.16 2008/05/24 14:06:39 yamt Exp $\t*/\n\n/*-\n * Copyright (c) 1982, 1986, 1993\n *\tThe Regents"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/ttydev.h",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/types.h",
    "chars": 4854,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/ucontext.h",
    "chars": 6335,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/uio.h",
    "chars": 2371,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/un.h",
    "chars": 1521,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/unistd.h",
    "chars": 20,
    "preview": "#include <unistd.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/user.h",
    "chars": 5642,
    "preview": "/*\n * Copyright (C) 2013 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/utime.h",
    "chars": 1496,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/utsname.h",
    "chars": 1799,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/vfs.h",
    "chars": 4581,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/vt.h",
    "chars": 22,
    "preview": "#include <linux/vt.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/wait.h",
    "chars": 2434,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sys/xattr.h",
    "chars": 2490,
    "preview": "/*\n * Copyright (C) 2012 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/syscall.h",
    "chars": 25,
    "preview": "#include <sys/syscall.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/sysexits.h",
    "chars": 5448,
    "preview": "/*\t$OpenBSD: sysexits.h,v 1.5 2003/06/02 19:34:12 millert Exp $\t*/\n/*\t$NetBSD: sysexits.h,v 1.4 1994/10/26 00:56:33 cgd "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/syslog.h",
    "chars": 3126,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/termio.h",
    "chars": 1533,
    "preview": "/*\n * Copyright (C) 2010 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/termios.h",
    "chars": 2118,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/time.h",
    "chars": 4057,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/time64.h",
    "chars": 2018,
    "preview": "/*\n\nCopyright (c) 2007-2008  Michael G Schwern\n\nThis software originally derived from Paul Sheer's pivotal_gmtime_r.c.\n\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/uchar.h",
    "chars": 2135,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/ucontext.h",
    "chars": 1495,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/unistd.h",
    "chars": 18234,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/util.h",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "atlas-aapt/bionic/libc/include/utime.h",
    "chars": 1614,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/utmp.h",
    "chars": 2769,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/wait.h",
    "chars": 22,
    "preview": "#include <sys/wait.h>\n"
  },
  {
    "path": "atlas-aapt/bionic/libc/include/wchar.h",
    "chars": 8002,
    "preview": "/*\n * Copyright (C) 2008 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/wctype.h",
    "chars": 2181,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/bionic/libc/include/xlocale.h",
    "chars": 1591,
    "preview": "/*\n * Copyright (C) 2014 The Android Open Source Project\n * All rights reserved.\n *\n * Redistribution and use in source "
  },
  {
    "path": "atlas-aapt/build_ShakaAapt_all_in_linux.sh",
    "chars": 992,
    "preview": "#! /bin/bash\n#43\n\nexport Project=ShakaAapt\nexport BUILD_NUMBER=$Project.$(date +%Y%m%d.%H%M%S)\nexport BinDir=ShakaAaptBi"
  },
  {
    "path": "atlas-aapt/build_ShakaAapt_all_in_maxos.sh",
    "chars": 972,
    "preview": "#! /bin/bash\n\nexport Project=ShakaAapt\nexport BUILD_NUMBER=$Project.$(date +%Y%m%d.%H%M%S)\nexport BinDir=ShakaAaptBin\n\ne"
  },
  {
    "path": "atlas-aapt/external/compiler-rt/.arcconfig",
    "chars": 81,
    "preview": "{\n  \"project_id\" : \"compiler-rt\",\n  \"conduit_uri\" : \"http://reviews.llvm.org/\"\n}\n"
  },
  {
    "path": "atlas-aapt/external/compiler-rt/.gitignore",
    "chars": 44,
    "preview": "*~\ndarwin_fat\nclang_darwin\nmulti_arch\n*.sw?\n"
  },
  {
    "path": "atlas-aapt/external/compiler-rt/Android.bp",
    "chars": 14839,
    "preview": "//\n// Copyright (C) 2012 The Android Open Source Project\n//\n// Licensed under the Apache License, Version 2.0 (the \"Lice"
  }
]

// ... and 4039 more files (download for full content)

About this extraction

This page contains the full source code of the alibaba/atlas GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 4239 files (37.8 MB), approximately 10.2M tokens, and a symbol index with 27769 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!