lib/libc/glibc/bits/byteswap.h | 2 +- lib/libc/glibc/bits/floatn-common.h | 2 +- lib/libc/glibc/bits/libc-header-start.h | 30 +- lib/libc/glibc/bits/long-double.h | 17 +- lib/libc/glibc/bits/select.h | 2 +- lib/libc/glibc/bits/signum-generic.h | 29 +- lib/libc/glibc/bits/stat.h | 2 +- lib/libc/glibc/bits/stdint-intn.h | 2 +- lib/libc/glibc/bits/stdlib-bsearch.h | 2 +- lib/libc/glibc/bits/time64.h | 2 +- lib/libc/glibc/bits/timesize.h | 2 +- lib/libc/glibc/bits/types/struct_sched_param.h | 2 +- lib/libc/glibc/bits/typesizes.h | 9 +- lib/libc/glibc/bits/uintn-identity.h | 2 +- lib/libc/glibc/bits/waitflags.h | 10 +- lib/libc/glibc/bits/waitstatus.h | 2 +- lib/libc/glibc/csu/elf-init.c | 106 --- lib/libc/glibc/csu/errno.c | 35 + lib/libc/glibc/debug/stack_chk_fail_local.c | 2 +- lib/libc/glibc/elf/elf.h | 143 +++- lib/libc/glibc/include/bits/cpu-set.h | 8 + lib/libc/glibc/include/errno.h | 45 ++ lib/libc/glibc/include/features.h | 27 +- lib/libc/glibc/include/libc-pointer-arith.h | 5 +- lib/libc/glibc/include/libc-symbols.h | 145 ++-- lib/libc/glibc/include/pthread.h | 11 + lib/libc/glibc/include/signal.h | 17 +- lib/libc/glibc/include/stap-probe.h | 2 +- lib/libc/glibc/include/stdc-predef.h | 2 +- lib/libc/glibc/include/stdlib.h | 25 +- lib/libc/glibc/include/struct___timespec64.h | 27 + lib/libc/glibc/include/struct___timeval64.h | 17 + lib/libc/glibc/include/sys/cdefs.h | 20 + lib/libc/glibc/include/sys/select.h | 29 + lib/libc/glibc/include/sys/stat.h | 120 ++-- lib/libc/glibc/io/bits/statx.h | 2 +- lib/libc/glibc/io/fcntl.h | 347 ++++++++++ lib/libc/glibc/io/fstat.c | 42 +- lib/libc/glibc/io/fstat64.c | 43 +- lib/libc/glibc/io/fstatat.c | 52 +- lib/libc/glibc/io/fstatat64.c | 52 +- lib/libc/glibc/io/lstat.c | 36 +- lib/libc/glibc/io/lstat64.c | 37 +- lib/libc/glibc/io/mknod.c | 38 +- lib/libc/glibc/io/mknodat.c | 40 +- lib/libc/glibc/io/stat.c | 35 +- lib/libc/glibc/io/stat64.c | 37 +- lib/libc/glibc/io/sys/stat.h | 268 +++----- lib/libc/glibc/locale/bits/types/__locale_t.h | 2 +- lib/libc/glibc/locale/bits/types/locale_t.h | 2 +- lib/libc/glibc/misc/sys/cdefs.h | 256 +++++-- lib/libc/glibc/misc/sys/select.h | 29 +- lib/libc/glibc/nptl/pthread_atfork.c | 61 -- lib/libc/glibc/posix/bits/cpu-set.h | 2 +- lib/libc/glibc/posix/bits/types.h | 3 +- lib/libc/glibc/posix/sys/types.h | 2 +- lib/libc/glibc/signal/signal.h | 47 +- lib/libc/glibc/stdlib/alloca.h | 4 +- lib/libc/glibc/stdlib/at_quick_exit.c | 2 +- lib/libc/glibc/stdlib/atexit.c | 2 +- lib/libc/glibc/stdlib/bits/stdlib-float.h | 2 +- lib/libc/glibc/stdlib/errno.h | 55 ++ lib/libc/glibc/stdlib/exit.h | 2 +- lib/libc/glibc/stdlib/stdlib.h | 33 +- lib/libc/glibc/string/bits/endian.h | 2 +- lib/libc/glibc/string/endian.h | 2 +- lib/libc/glibc/sysdeps/aarch64/crti.S | 12 +- lib/libc/glibc/sysdeps/aarch64/crtn.S | 10 +- lib/libc/glibc/sysdeps/aarch64/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/aarch64/start.S | 23 +- lib/libc/glibc/sysdeps/aarch64/sysdep.h | 73 +- lib/libc/glibc/sysdeps/alpha/crti.S | 2 +- lib/libc/glibc/sysdeps/alpha/crtn.S | 2 +- lib/libc/glibc/sysdeps/alpha/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/alpha/nptl/bits/pthreadtypes-arch.h | 61 -- lib/libc/glibc/sysdeps/alpha/start.S | 7 +- lib/libc/glibc/sysdeps/arm/crti.S | 2 +- lib/libc/glibc/sysdeps/arm/crtn.S | 2 +- lib/libc/glibc/sysdeps/arm/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/arm/nptl/bits/pthreadtypes-arch.h | 71 -- lib/libc/glibc/sysdeps/arm/start.S | 24 +- lib/libc/glibc/sysdeps/arm/sysdep.h | 2 +- lib/libc/glibc/sysdeps/generic/dl-dtprocnum.h | 2 +- lib/libc/glibc/sysdeps/generic/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/generic/dwarf2.h | 2 +- lib/libc/glibc/sysdeps/generic/libc-lock.h | 14 +- lib/libc/glibc/sysdeps/generic/libc-symver.h | 88 +++ lib/libc/glibc/sysdeps/generic/single-thread.h | 2 +- lib/libc/glibc/sysdeps/generic/struct_stat_time64.h | 6 + lib/libc/glibc/sysdeps/generic/sysdep.h | 2 +- lib/libc/glibc/sysdeps/generic/tls.h | 2 +- lib/libc/glibc/sysdeps/generic/xstatver.h | 4 + lib/libc/glibc/sysdeps/hppa/crti.S | 2 +- lib/libc/glibc/sysdeps/hppa/crtn.S | 2 +- lib/libc/glibc/sysdeps/hppa/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/hppa/start.S | 28 +- lib/libc/glibc/sysdeps/hppa/sysdep.h | 2 +- lib/libc/glibc/sysdeps/htl/bits/pthread.h | 2 +- lib/libc/glibc/sysdeps/htl/bits/thread-shared-types.h | 15 +- lib/libc/glibc/sysdeps/htl/libc-lockP.h | 15 +- lib/libc/glibc/sysdeps/htl/pthread.h | 105 +-- lib/libc/glibc/sysdeps/i386/crti.S | 2 +- lib/libc/glibc/sysdeps/i386/crtn.S | 2 +- lib/libc/glibc/sysdeps/i386/htl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/i386/start.S | 16 +- lib/libc/glibc/sysdeps/i386/symbol-hacks.h | 2 +- lib/libc/glibc/sysdeps/i386/sysdep.h | 8 +- lib/libc/glibc/sysdeps/ia64/crti.S | 2 +- lib/libc/glibc/sysdeps/ia64/crtn.S | 2 +- lib/libc/glibc/sysdeps/ia64/dl-dtprocnum.h | 2 +- lib/libc/glibc/sysdeps/ia64/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/ia64/nptl/bits/pthreadtypes-arch.h | 63 -- lib/libc/glibc/sysdeps/ia64/start.S | 11 +- lib/libc/glibc/sysdeps/ia64/sysdep.h | 2 +- lib/libc/glibc/sysdeps/init_array/crti.S | 27 - lib/libc/glibc/sysdeps/init_array/crtn.S | 13 - lib/libc/glibc/sysdeps/m68k/coldfire/sysdep.h | 2 +- lib/libc/glibc/sysdeps/m68k/crti.S | 2 +- lib/libc/glibc/sysdeps/m68k/crtn.S | 2 +- lib/libc/glibc/sysdeps/m68k/m680x0/sysdep.h | 2 +- lib/libc/glibc/sysdeps/m68k/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/m68k/start.S | 15 +- lib/libc/glibc/sysdeps/m68k/symbol-hacks.h | 2 +- lib/libc/glibc/sysdeps/m68k/sysdep.h | 2 +- lib/libc/glibc/sysdeps/mach/hurd/bits/stat.h | 263 ------- lib/libc/glibc/sysdeps/mach/hurd/bits/typesizes.h | 72 -- lib/libc/glibc/sysdeps/mach/hurd/dl-sysdep.h | 31 - lib/libc/glibc/sysdeps/mach/hurd/kernel-features.h | 21 - lib/libc/glibc/sysdeps/mach/i386/sysdep.h | 12 +- lib/libc/glibc/sysdeps/mach/libc-lock.h | 25 +- lib/libc/glibc/sysdeps/mach/sysdep.h | 10 +- lib/libc/glibc/sysdeps/microblaze/crti.S | 2 +- lib/libc/glibc/sysdeps/microblaze/crtn.S | 2 +- lib/libc/glibc/sysdeps/microblaze/nptl/bits/pthreadtypes-arch.h | 72 -- lib/libc/glibc/sysdeps/microblaze/start.S | 10 +- lib/libc/glibc/sysdeps/microblaze/sysdep.h | 2 +- lib/libc/glibc/sysdeps/mips/dl-dtprocnum.h | 2 +- lib/libc/glibc/sysdeps/mips/mips32/crti.S | 2 +- lib/libc/glibc/sysdeps/mips/mips32/crtn.S | 2 +- lib/libc/glibc/sysdeps/mips/mips64/n32/crti.S | 2 +- lib/libc/glibc/sysdeps/mips/mips64/n32/crtn.S | 2 +- lib/libc/glibc/sysdeps/mips/mips64/n64/crti.S | 2 +- lib/libc/glibc/sysdeps/mips/mips64/n64/crtn.S | 2 +- lib/libc/glibc/sysdeps/mips/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/mips/start.S | 20 +- lib/libc/glibc/sysdeps/nptl/bits/pthreadtypes.h | 2 +- lib/libc/glibc/sysdeps/nptl/bits/thread-shared-types.h | 12 +- lib/libc/glibc/sysdeps/nptl/libc-lock.h | 61 +- lib/libc/glibc/sysdeps/nptl/libc-lockP.h | 273 ++------ lib/libc/glibc/sysdeps/nptl/pthread.h | 231 ++++++- lib/libc/glibc/sysdeps/powerpc/nptl/bits/pthreadtypes-arch.h | 81 --- lib/libc/glibc/sysdeps/powerpc/powerpc32/crti.S | 2 +- lib/libc/glibc/sysdeps/powerpc/powerpc32/crtn.S | 2 +- lib/libc/glibc/sysdeps/powerpc/powerpc32/start.S | 6 +- lib/libc/glibc/sysdeps/powerpc/powerpc32/symbol-hacks.h | 2 +- lib/libc/glibc/sysdeps/powerpc/powerpc32/sysdep.h | 21 +- lib/libc/glibc/sysdeps/powerpc/powerpc64/crti.S | 2 +- lib/libc/glibc/sysdeps/powerpc/powerpc64/crtn.S | 2 +- lib/libc/glibc/sysdeps/powerpc/powerpc64/dl-dtprocnum.h | 2 +- lib/libc/glibc/sysdeps/powerpc/powerpc64/start.S | 6 +- lib/libc/glibc/sysdeps/powerpc/powerpc64/sysdep.h | 134 +++- lib/libc/glibc/sysdeps/powerpc/sysdep.h | 2 +- lib/libc/glibc/sysdeps/pthread/pthread_atfork.c | 61 ++ lib/libc/glibc/sysdeps/riscv/nptl/bits/pthreadtypes-arch.h | 28 +- lib/libc/glibc/sysdeps/riscv/start.S | 6 +- lib/libc/glibc/sysdeps/s390/nptl/bits/pthreadtypes-arch.h | 79 --- lib/libc/glibc/sysdeps/s390/s390-32/crti.S | 2 +- lib/libc/glibc/sysdeps/s390/s390-32/crtn.S | 2 +- lib/libc/glibc/sysdeps/s390/s390-32/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/s390/s390-32/start.S | 12 +- lib/libc/glibc/sysdeps/s390/s390-32/symbol-hacks.h | 2 +- lib/libc/glibc/sysdeps/s390/s390-32/sysdep.h | 2 +- lib/libc/glibc/sysdeps/s390/s390-64/crti.S | 2 +- lib/libc/glibc/sysdeps/s390/s390-64/crtn.S | 2 +- lib/libc/glibc/sysdeps/s390/s390-64/start.S | 6 +- lib/libc/glibc/sysdeps/s390/s390-64/sysdep.h | 2 +- lib/libc/glibc/sysdeps/sh/crti.S | 2 +- lib/libc/glibc/sysdeps/sh/crtn.S | 2 +- lib/libc/glibc/sysdeps/sh/nptl/bits/pthreadtypes-arch.h | 71 -- lib/libc/glibc/sysdeps/sh/start.S | 11 +- lib/libc/glibc/sysdeps/sh/sysdep.h | 2 +- lib/libc/glibc/sysdeps/sparc/crti.S | 2 +- lib/libc/glibc/sysdeps/sparc/crtn.S | 2 +- lib/libc/glibc/sysdeps/sparc/dl-dtprocnum.h | 2 +- lib/libc/glibc/sysdeps/sparc/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/sparc/sparc32/start.S | 14 +- lib/libc/glibc/sysdeps/sparc/sparc64/start.S | 14 +- lib/libc/glibc/sysdeps/sparc/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/alpha/sysdep.h | 382 ----------- lib/libc/glibc/sysdeps/unix/arm/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/i386/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/mips/mips32/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/mips/mips64/n32/sysdep.h | 64 -- lib/libc/glibc/sysdeps/unix/mips/mips64/n64/sysdep.h | 64 -- lib/libc/glibc/sysdeps/unix/mips/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/powerpc/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/sh/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/sysdep.h | 49 +- lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/kernel-features.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sys/elf.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/aarch64/sysdep.h | 45 +- lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/bits/stat.h | 160 ----- lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/bits/typesizes.h | 6 +- lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/kernel-features.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/alpha/sysdep.h | 333 ++++++++- lib/libc/glibc/sysdeps/unix/sysv/linux/arm/kernel-features.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sys/elf.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/arm/sysdep.h | 41 +- lib/libc/glibc/sysdeps/unix/sysv/linux/bits/stat.h | 116 +--- lib/libc/glibc/sysdeps/unix/sysv/linux/bits/timex.h | 33 +- lib/libc/glibc/sysdeps/unix/sysv/linux/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/generic/bits/stat.h | 174 ----- lib/libc/glibc/sysdeps/unix/sysv/linux/generic/bits/typesizes.h | 40 +- lib/libc/glibc/sysdeps/unix/sysv/linux/generic/sysdep.h | 10 +- lib/libc/glibc/sysdeps/unix/sysv/linux/generic/xstatver.h | 10 + lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/kernel-features.h | 7 +- lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/pthread.h | 1174 -------------------------------- lib/libc/glibc/sysdeps/unix/sysv/linux/hppa/sysdep.h | 38 +- lib/libc/glibc/sysdeps/unix/sysv/linux/i386/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/i386/kernel-features.h | 6 +- lib/libc/glibc/sysdeps/unix/sysv/linux/i386/sysdep.h | 193 +++--- lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/bits/stat.h | 149 ---- lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/kernel-features.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/ia64/sysdep.h | 62 +- lib/libc/glibc/sysdeps/unix/sysv/linux/include/sys/timex.h | 173 ++++- lib/libc/glibc/sysdeps/unix/sysv/linux/kernel-features.h | 16 +- lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/bits/stat.h | 172 ----- lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/coldfire/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/kernel-features.h | 6 +- lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/m680x0/sysdep.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/sysdep.h | 34 +- lib/libc/glibc/sysdeps/unix/sysv/linux/m68k/xstatver.h | 13 + lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/bits/stat.h | 203 ------ lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/kernel-features.h | 4 +- lib/libc/glibc/sysdeps/unix/sysv/linux/microblaze/sysdep.h | 127 ++-- lib/libc/glibc/sysdeps/unix/sysv/linux/mips/bits/stat.h | 263 ------- lib/libc/glibc/sysdeps/unix/sysv/linux/mips/kernel-features.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips32/sysdep.h | 205 +++--- lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h | 311 --------- lib/libc/glibc/sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h | 307 --------- lib/libc/glibc/sysdeps/unix/sysv/linux/mips/xstatver.h | 13 + lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/bits/stat.h | 275 -------- lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/kernel-features.h | 4 +- lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h | 214 ------ lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h | 198 +----- lib/libc/glibc/sysdeps/unix/sysv/linux/powerpc/xstatver.h | 17 + lib/libc/glibc/sysdeps/unix/sysv/linux/riscv/kernel-features.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/riscv/sysdep.h | 188 ++--- lib/libc/glibc/sysdeps/unix/sysv/linux/s390/bits/stat.h | 265 ------- lib/libc/glibc/sysdeps/unix/sysv/linux/s390/bits/typesizes.h | 9 +- lib/libc/glibc/sysdeps/unix/sysv/linux/s390/kernel-features.h | 6 +- lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h | 110 +-- lib/libc/glibc/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h | 120 +--- lib/libc/glibc/sysdeps/unix/sysv/linux/s390/sys/elf.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/s390/xstatver.h | 19 + lib/libc/glibc/sysdeps/unix/sysv/linux/sh/kernel-features.h | 4 +- lib/libc/glibc/sysdeps/unix/sysv/linux/sh/sysdep.h | 27 +- lib/libc/glibc/sysdeps/unix/sysv/linux/single-thread.h | 44 +- lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/bits/stat.h | 173 ----- lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h | 9 +- lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/kernel-features.h | 6 +- lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h | 8 +- lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h | 5 +- lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/sysdep.h | 184 +++-- lib/libc/glibc/sysdeps/unix/sysv/linux/sparc/xstatver.h | 13 + lib/libc/glibc/sysdeps/unix/sysv/linux/struct_stat_time64.h | 34 + lib/libc/glibc/sysdeps/unix/sysv/linux/sys/syscall.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/sys/timex.h | 31 +- lib/libc/glibc/sysdeps/unix/sysv/linux/sysdep.h | 42 +- lib/libc/glibc/sysdeps/unix/sysv/linux/x86/bits/stat.h | 210 ------ lib/libc/glibc/sysdeps/unix/sysv/linux/x86/bits/typesizes.h | 8 +- lib/libc/glibc/sysdeps/unix/sysv/linux/x86/sys/elf.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/x86/xstatver.h | 16 + lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/kernel-features.h | 2 +- lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/sysdep.h | 157 +++-- lib/libc/glibc/sysdeps/unix/sysv/linux/x86_64/x32/sysdep.h | 37 +- lib/libc/glibc/sysdeps/unix/sysv/linux/xstatver.h | 13 + lib/libc/glibc/sysdeps/unix/x86_64/sysdep.h | 2 +- lib/libc/glibc/sysdeps/wordsize-32/divdi3-symbol-hacks.h | 2 +- lib/libc/glibc/sysdeps/x86/bits/select.h | 63 -- lib/libc/glibc/sysdeps/x86/nptl/bits/pthreadtypes-arch.h | 2 +- lib/libc/glibc/sysdeps/x86/sysdep.h | 7 +- lib/libc/glibc/sysdeps/x86_64/crti.S | 2 +- lib/libc/glibc/sysdeps/x86_64/crtn.S | 2 +- lib/libc/glibc/sysdeps/x86_64/start.S | 14 +- lib/libc/glibc/sysdeps/x86_64/sysdep.h | 24 +- lib/libc/glibc/sysdeps/x86_64/x32/sysdep.h | 2 +- lib/libc/glibc/time/bits/types/struct_timespec.h | 7 +- lib/libc/glibc/time/bits/types/struct_timeval.h | 5 + lib/libc/glibc/time/bits/types/time_t.h | 4 + src/glibc.zig | 43 +- test/standalone.zig | 1 + tools/update_glibc.zig | 71 ++ 295 files changed, 4070 insertions(+), 8630 deletions(-)